summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Core/clim-core/frames/frames.lisp48
1 files changed, 31 insertions, 17 deletions
diff --git a/Core/clim-core/frames/frames.lisp b/Core/clim-core/frames/frames.lisp
index c52764c0..2b618c01 100644
--- a/Core/clim-core/frames/frames.lisp
+++ b/Core/clim-core/frames/frames.lisp
@@ -840,26 +840,21 @@ frames and will not have focus.
(declare (ignore input-context stream event))
nil)
-(defun frame-highlight-at-position (frame stream x y modifier input-context)
- "Given stream x,y; key modifiers; input-context, find the applicable
- presentation and maybe highlight it."
- (let ((presentation (find-innermost-applicable-presentation
- input-context
- stream
- x y
- :frame frame
- :modifier-state modifier)))
- (set-highlighted-presentation stream presentation)))
+(defun frame-highlight-at-position (frame input-context stream event)
+ (let* ((modifier (event-modifier-state event))
+ (x (device-event-x event))
+ (y (device-event-y event))
+ (presentation (find-innermost-applicable-presentation
+ input-context stream x y
+ :frame frame
+ :modifier-state modifier)))
+ (set-highlighted-presentation stream presentation)
+ (update-pointer-documentation frame input-context stream event)))
-(defmethod frame-input-context-track-pointer :before
+(defmethod frame-input-context-track-pointer
((frame standard-application-frame) input-context
(stream output-recording-stream) event)
- (frame-highlight-at-position frame stream
- (device-event-x event)
- (device-event-y event)
- (event-modifier-state event)
- input-context)
- (update-pointer-documentation frame input-context stream event))
+ (frame-highlight-at-position frame input-context stream event))
(defun simple-event-loop (&optional (frame *application-frame*))
"An simple event loop for applications that want all events to be handled by
@@ -882,6 +877,25 @@ frames and will not have focus.
do (setf (client-setting frame setting) value)))
+(defmethod frame-document-highlighted-presentation
+ ((frame standard-application-frame) presentation input-context
+ window-context x y stream)
+ (values))
+
+(defmethod frame-document-highlighted-presentation
+ ((frame standard-application-frame) presentation input-context
+ window-context x y (stream encapsulating-stream))
+ (frame-document-highlighted-presentation
+ frame presentation input-context
+ window-context x y (encapsulating-stream-stream stream)))
+
+;;; IMPLEMENTME
+(defmethod frame-document-highlighted-presentation
+ ((frame standard-application-frame) presentation input-context
+ window-context x y (stream clim-stream-pane))
+ (values))
+
+
(defmethod frame-drag-and-drop-feedback
((frame standard-application-frame) from-presentation stream
initial-x initial-y x y state)