[beirc-cvs] CVS beirc

afuchs afuchs at common-lisp.net
Mon Mar 6 10:25:00 UTC 2006


Update of /project/beirc/cvsroot/beirc
In directory clnet:/tmp/cvs-serv26336

Modified Files:
	application.lisp 
Log Message:
fix frame-input-context-button-press-handler for non-presentation clicks.


--- /project/beirc/cvsroot/beirc/application.lisp	2006/03/06 10:21:27	1.49
+++ /project/beirc/cvsroot/beirc/application.lisp	2006/03/06 10:25:00	1.50
@@ -827,29 +827,30 @@
          (y (pointer-event-y event))
          (window (event-sheet event))
          (presentation (frame-find-innermost-applicable-presentation frame *input-context* stream x y :event event)))
-    (multiple-value-bind (p translator context)
-	(climi::find-innermost-presentation-match *input-context*
-                                                  presentation
-                                                  *application-frame*
-                                                  (event-sheet event)
-                                                  x y
-                                                  event
-                                                  0
-                                                  nil)
-      (when p
-	(multiple-value-bind (object ptype options)
-	    (call-presentation-translator translator
-					  p
-					  (input-context-type context)
-					  *application-frame*
-					  event
-					  window
-					  x y)
-          (declare (ignore object options))
-	  (when (and ptype (presentation-subtypep ptype 'command)
-                     (boundp '*current-input-stream*) *current-input-stream*)
-            (restart-case (signal 'invoked-command-by-clicking)
-              (acknowledged ())))))))
+    (when presentation
+      (multiple-value-bind (p translator context)
+          (climi::find-innermost-presentation-match *input-context*
+                                                    presentation
+                                                    *application-frame*
+                                                    (event-sheet event)
+                                                    x y
+                                                    event
+                                                    0
+                                                    nil)
+        (when p
+          (multiple-value-bind (object ptype options)
+              (call-presentation-translator translator
+                                            p
+                                            (input-context-type context)
+                                            *application-frame*
+                                            event
+                                            window
+                                            x y)
+            (declare (ignore object options))
+            (when (and ptype (presentation-subtypep ptype 'command)
+                       (boundp '*current-input-stream*) *current-input-stream*)
+              (restart-case (signal 'invoked-command-by-clicking)
+                (acknowledged ()))))))))
   (call-next-method))
 
 (defmethod read-frame-command ((frame beirc) &key (stream *standard-input*))




More information about the Beirc-cvs mailing list