[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

trey trey at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:22:17 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 12187ee50a10f44b2f59ce559d553056a39774cf
Author: trey <trey at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Jan 28 20:11:48 2003 +0000

    	3158465 - REGRESSION: cursor turns into I-beam after clicking on most KWQ widgets
    
    	When we return from handing a mousedown to an AK widget, we check to see if currentEvent
    	is now a MouseUp, in which case we hand it to khtml.  This allows khtml to keep in
    	synch as to the state of the mouse.  This covers the case of AK widgets that
    	run their own event loop and consume events until a mouseup (but not ones that use
    	Carbon, such as PopUpList, since Carbon does not update currentEvent).
    
            Reviewed by Darin.
    
            * kwq/KWQKHTMLPart.mm:
            (KWQKHTMLPart::passWidgetMouseDownEventToWidget):  Pass mouseup to khtml.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3476 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 14bd55c..9cb36ba 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,5 +1,20 @@
 2003-01-28  Trey Matteson  <trey at apple.com>
 
+	3158465 - REGRESSION: cursor turns into I-beam after clicking on most KWQ widgets
+
+	When we return from handing a mousedown to an AK widget, we check to see if currentEvent
+	is now a MouseUp, in which case we hand it to khtml.  This allows khtml to keep in
+	synch as to the state of the mouse.  This covers the case of AK widgets that
+	run their own event loop and consume events until a mouseup (but not ones that use
+	Carbon, such as PopUpList, since Carbon does not update currentEvent).
+
+        Reviewed by Darin.
+
+        * kwq/KWQKHTMLPart.mm:
+        (KWQKHTMLPart::passWidgetMouseDownEventToWidget):  Pass mouseup to khtml.
+
+2003-01-28  Trey Matteson  <trey at apple.com>
+
 	2940179 - Arrow cursor should change to link cursor after click of link in non-frontmost window
 
 	3158238 - cursor shape does not track after double-click to activate a window
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 14bd55c..9cb36ba 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,20 @@
 2003-01-28  Trey Matteson  <trey at apple.com>
 
+	3158465 - REGRESSION: cursor turns into I-beam after clicking on most KWQ widgets
+
+	When we return from handing a mousedown to an AK widget, we check to see if currentEvent
+	is now a MouseUp, in which case we hand it to khtml.  This allows khtml to keep in
+	synch as to the state of the mouse.  This covers the case of AK widgets that
+	run their own event loop and consume events until a mouseup (but not ones that use
+	Carbon, such as PopUpList, since Carbon does not update currentEvent).
+
+        Reviewed by Darin.
+
+        * kwq/KWQKHTMLPart.mm:
+        (KWQKHTMLPart::passWidgetMouseDownEventToWidget):  Pass mouseup to khtml.
+
+2003-01-28  Trey Matteson  <trey at apple.com>
+
 	2940179 - Arrow cursor should change to link cursor after click of link in non-frontmost window
 
 	3158238 - cursor shape does not track after double-click to activate a window
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index a3433ff..aac79f6 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -913,6 +913,16 @@ bool KWQKHTMLPart::passWidgetMouseDownEventToWidget(RenderWidget *renderWidget)
     // Remember which view we sent the event to, so we can direct the release event properly.
     _mouseDownView = view;
     _mouseDownWasInSubframe = false;
+
+    // Many AK widgets run their own event loops and consume events while the mouse is down.
+    // When they finish, currentEvent is the mouseUp that they exited on.  We need to update
+    // the khtml state with this mouseUp, which khtml never saw.
+    // If this event isn't a mouseUp, we assume that the mouseUp will be coming later.  There
+    // is a hole here if the widget consumes the mouseUp and subsequent events.
+    NSEvent *lastEvent = [NSApp currentEvent];
+    if ([lastEvent type] == NSLeftMouseUp) {
+        mouseUp(lastEvent);
+    }
     
     return true;
 }

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list