2006-10-19 Steve Falkenburg <sfalken@apple.com>
authorsfalken <sfalken@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Oct 2006 07:01:55 +0000 (07:01 +0000)
committersfalken <sfalken@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Oct 2006 07:01:55 +0000 (07:01 +0000)
        Reviewed by Adam.

        Use GetKeyState rather than GetAsyncKeyState since we're
        calling in these cases in direct response to an event, and want the
        key state associated with that event.

        Pass triggering event to url selection method.

        * bridge/mac/FrameMac.h: Add triggeringEvent parameter
        * bridge/mac/FrameMac.mm:
        (WebCore::FrameMac::urlSelected): Add triggeringEvent parameter
        * bridge/win/FrameWin.cpp:
        (WebCore::FrameWin::urlSelected): Add triggeringEvent parameter
        * bridge/win/FrameWin.h: Add triggeringEvent parameter
        * html/HTMLAnchorElement.cpp:
        (WebCore::HTMLAnchorElement::defaultEventHandler): Pass triggering event to URL selection method
        * page/Frame.cpp:
        (WebCore::Frame::changeLocation): Add 0 as triggeringEvent
        (WebCore::Frame::urlSelected): Pass through triggeringEvent
        * page/Frame.h: Add triggeringEvent parameter to urlSelected methods
        * platform/win/KeyEventWin.cpp:
        (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Use GetKeyState instead of GetAsyncKeyState
        * platform/win/MouseEventWin.cpp: Use GetKeyState instead of GetAsyncKeyState
        (WebCore::PlatformMouseEvent::PlatformMouseEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17154 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/bridge/mac/FrameMac.h
WebCore/bridge/mac/FrameMac.mm
WebCore/bridge/win/FrameWin.cpp
WebCore/bridge/win/FrameWin.h
WebCore/html/HTMLAnchorElement.cpp
WebCore/page/Frame.cpp
WebCore/page/Frame.h
WebCore/platform/win/KeyEventWin.cpp
WebCore/platform/win/MouseEventWin.cpp

index b5fe0645281f1b4caa4d82bc6ca89d728d6af57d..86dfe711f8f400371d5c3efeca8f47690f19f9e7 100644 (file)
@@ -1,3 +1,30 @@
+2006-10-19  Steve Falkenburg  <sfalken@apple.com>
+
+        Reviewed by Adam.
+
+        Use GetKeyState rather than GetAsyncKeyState since we're
+        calling in these cases in direct response to an event, and want the
+        key state associated with that event.
+        
+        Pass triggering event to url selection method.
+        
+        * bridge/mac/FrameMac.h: Add triggeringEvent parameter
+        * bridge/mac/FrameMac.mm:
+        (WebCore::FrameMac::urlSelected): Add triggeringEvent parameter
+        * bridge/win/FrameWin.cpp:
+        (WebCore::FrameWin::urlSelected): Add triggeringEvent parameter
+        * bridge/win/FrameWin.h: Add triggeringEvent parameter
+        * html/HTMLAnchorElement.cpp:
+        (WebCore::HTMLAnchorElement::defaultEventHandler): Pass triggering event to URL selection method
+        * page/Frame.cpp:
+        (WebCore::Frame::changeLocation): Add 0 as triggeringEvent
+        (WebCore::Frame::urlSelected): Pass through triggeringEvent
+        * page/Frame.h: Add triggeringEvent parameter to urlSelected methods
+        * platform/win/KeyEventWin.cpp:
+        (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Use GetKeyState instead of GetAsyncKeyState
+        * platform/win/MouseEventWin.cpp: Use GetKeyState instead of GetAsyncKeyState
+        (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+
 2006-10-19  David Hyatt  <hyatt@apple.com>
 
         Correct typos from changing "flush" to "prune" using automated search/replace.
index d10324a0483ab35f7ec85b08e24d2a503599b97b..093194cc024c47c6cec3877998c2a607c3658145 100644 (file)
@@ -134,7 +134,7 @@ public:
 
     virtual void submitForm(const FrameLoadRequest&);
     virtual void openURLRequest(const FrameLoadRequest&);
-    virtual void urlSelected(const FrameLoadRequest&);
+    virtual void urlSelected(const FrameLoadRequest&, const Event* triggeringEvent);
 
     virtual ObjectContentType objectContentType(const KURL& url, const String& mimeType);
     virtual Plugin* createPlugin(Element* element, const KURL& url, const Vector<String>& paramNames, const Vector<String>& paramValues, const String& mimeType);
index 4d33ef0c0ce5b6e187738dc6791ab77c5e4c90d3..a03a685f113f4e2f3975affc6a122434fbdbd4b2 100644 (file)
@@ -481,7 +481,7 @@ void FrameMac::openURLRequest(const FrameLoadRequest& request)
 }
 
 
-void FrameMac::urlSelected(const FrameLoadRequest& request)
+void FrameMac::urlSelected(const FrameLoadRequest& request, const Event* /*triggeringEvent*/)
 {
     BEGIN_BLOCK_OBJC_EXCEPTIONS;
 
index af61a03862d666cf4f212e87a14985377cd1e6cb..6585ea6a76bef453f3eef153e094831d9cf4d2d5 100644 (file)
@@ -65,7 +65,7 @@ FrameWin::~FrameWin()
     clearRecordedFormValues();    
 }
 
-void FrameWin::urlSelected(const FrameLoadRequest& request)
+void FrameWin::urlSelected(const FrameLoadRequest& request, const Event* /*triggeringEvent*/)
 {
     if (m_client)
         m_client->openURL(request.m_request.url().url(), request.lockHistory());
index a56b79de3fbede3db148d9046ad6e962c237bf00..18f35dc24cb90be8dfbdbff3e3c79a5737be8f31 100644 (file)
@@ -52,7 +52,7 @@ public:
     virtual bool openURL(const KURL&);
     virtual void openURLRequest(const FrameLoadRequest&);
     virtual void submitForm(const FrameLoadRequest&);
-    virtual void urlSelected(const FrameLoadRequest&);
+    virtual void urlSelected(const FrameLoadRequest&, const Event* triggeringEvent);
 
     virtual void setTitle(const String&);
     virtual void setStatusBarText(const String&);
index 10c8e1f3cb62b092abb84382312945ef7cea7f60..3ad31125675d0add8cfc94d486b4b5fc5deae31d 100644 (file)
@@ -205,7 +205,7 @@ void HTMLAnchorElement::defaultEventHandler(Event *evt)
         }
 
         if (!evt->defaultPrevented() && document()->frame())
-            document()->frame()->urlSelected(url, utarget);
+            document()->frame()->urlSelected(url, utarget, evt);
 
         evt->setDefaultHandled();
     } else if (m_isLink && isContentEditable()) {
index e321f01003017fffcf2a8c82a9aa15176e0523fa..9012c743209484eb77cd31227ea22f0ed1cd8dc7 100644 (file)
@@ -1108,7 +1108,7 @@ void Frame::changeLocation(const DeprecatedString& URL, const String& referrer,
     ResourceRequestCachePolicy policy = (d->m_cachePolicy == CachePolicyReload) || (d->m_cachePolicy == CachePolicyRefresh) ? ReloadIgnoringCacheData : UseProtocolCachePolicy;
     ResourceRequest request(completeURL(URL), referrer, policy);
     
-    urlSelected(request, "_self", lockHistory);
+    urlSelected(request, "_self", 0, lockHistory);
 }
 
 void Frame::redirectionTimerFired(Timer<Frame>*)
@@ -1408,12 +1408,12 @@ void Frame::paintDragCaret(GraphicsContext* p, const IntRect& rect) const
         dragCaretController->paintCaret(p, rect);
 }
 
-void Frame::urlSelected(const DeprecatedString& url, const String& target)
+void Frame::urlSelected(const DeprecatedString& url, const String& target, const Event* triggeringEvent)
 {
-    urlSelected(ResourceRequest(completeURL(url)), target);
+    urlSelected(ResourceRequest(completeURL(url)), target, triggeringEvent);
 }
 
-void Frame::urlSelected(const ResourceRequest& request, const String& _target, bool lockHistory)
+void Frame::urlSelected(const ResourceRequest& request, const String& _target, const Event* triggeringEvent, bool lockHistory)
 {
   String target = _target;
   if (target.isEmpty() && d->m_doc)
@@ -1440,7 +1440,7 @@ void Frame::urlSelected(const ResourceRequest& request, const String& _target, b
   if (frameRequest.m_request.httpReferrer().isEmpty())
       frameRequest.m_request.setHTTPReferrer(d->m_referrer);
 
-  urlSelected(frameRequest);
+  urlSelected(frameRequest, triggeringEvent);
 }
 
 bool Frame::requestFrame(Element* ownerElement, const String& urlParam, const AtomicString& frameName)
index c88132f9a5e1e8147845618171083014665f81ad..c18c95109444c6b2bfc3ce4c83c3c6b137621fff 100644 (file)
@@ -534,8 +534,8 @@ public:
 
   void selectClosestWordFromMouseEvent(const PlatformMouseEvent&, Node* innerNode);
 
-  virtual void urlSelected(const DeprecatedString& url, const String& target);
-  virtual void urlSelected(const ResourceRequest&, const String& target, bool lockHistory = false);
+  virtual void urlSelected(const DeprecatedString& url, const String& target, const Event* triggeringEvent);
+  virtual void urlSelected(const ResourceRequest&, const String& target, const Event* triggeringEvent, bool lockHistory = false);
 
   // Methods with platform-specific overrides (and no base class implementation).
   virtual void setTitle(const String&) = 0;
@@ -585,7 +585,7 @@ public:
   virtual bool canGoBackOrForward(int distance) const = 0;
   virtual void openURLRequest(const FrameLoadRequest&) = 0;
   virtual void submitForm(const FrameLoadRequest&) = 0;
-  virtual void urlSelected(const FrameLoadRequest&) = 0;
+  virtual void urlSelected(const FrameLoadRequest&, const Event* triggeringEvent) = 0;
   virtual bool lastEventIsMouseUp() const = 0;
   virtual String overrideMediaType() const = 0;
   virtual void redirectDataToPlugin(Widget* pluginWidget) { }
index 0dd90f5e99339abd1f295d083c60468ce9b363d6..c0da10a138a8d43fe5835186a7cc93ad996fa7fa 100644 (file)
@@ -144,8 +144,8 @@ PlatformKeyboardEvent::PlatformKeyboardEvent(HWND hWnd, WPARAM wParam, LPARAM lP
     , m_autoRepeat(lParam & REPEAT_COUNT_MASK)
     , m_WindowsKeyCode(wParam)
     , m_isKeypad(false) // FIXME
-    , m_shiftKey(GetAsyncKeyState(VK_SHIFT) & HIGH_BIT_MASK_SHORT)
-    , m_ctrlKey(GetAsyncKeyState(VK_CONTROL) & HIGH_BIT_MASK_SHORT)
+    , m_shiftKey(GetKeyState(VK_SHIFT) & HIGH_BIT_MASK_SHORT)
+    , m_ctrlKey(GetKeyState(VK_CONTROL) & HIGH_BIT_MASK_SHORT)
     , m_altKey(lParam & ALT_KEY_DOWN_MASK)
     , m_metaKey(lParam & ALT_KEY_DOWN_MASK) // FIXME: Is this right?
 {
index b33d19e2aa644c29c589a48c824a758d77c3e43d..7f1ba1598586dd0d24dfe0de894e6ab4de21dab3 100644 (file)
@@ -56,7 +56,7 @@ PlatformMouseEvent::PlatformMouseEvent(HWND hWnd, UINT message, WPARAM wParam, L
     , m_globalPosition(globalPositionForEvent(hWnd, lParam))
     , m_shiftKey(wParam & MK_SHIFT)
     , m_ctrlKey(wParam & MK_CONTROL)
-    , m_altKey(GetAsyncKeyState(VK_MENU) & HIGH_BIT_MASK_SHORT)
+    , m_altKey(GetKeyState(VK_MENU) & HIGH_BIT_MASK_SHORT)
     , m_metaKey(m_altKey) // FIXME: We'll have to test other browsers
 {
     switch (message) {