diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-20 16:08:49 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-08-20 16:08:49 +0000 |
commit | 13d08b78bcfd4721542a94d6de19052d2b33ba50 (patch) | |
tree | cf8c8d27042a4c2d1f977802dd22968191224328 /ui/base/win | |
parent | 71d97af6ac41981031ad1ae16d8e7f1569769f8d (diff) | |
download | chromium_src-13d08b78bcfd4721542a94d6de19052d2b33ba50.zip chromium_src-13d08b78bcfd4721542a94d6de19052d2b33ba50.tar.gz chromium_src-13d08b78bcfd4721542a94d6de19052d2b33ba50.tar.bz2 |
Wires up MouseEvent changed flags on windows.
BUG=140102
TEST=none
R=ben@chromium.org,msw@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10823380
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152331 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/base/win')
-rw-r--r-- | ui/base/win/events_win.cc | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/ui/base/win/events_win.cc b/ui/base/win/events_win.cc index 5cf937c..0dd8429 100644 --- a/ui/base/win/events_win.cc +++ b/ui/base/win/events_win.cc @@ -111,10 +111,6 @@ int KeyStateFlagsFromNative(const base::NativeEvent& native_event) { // Returns a mask corresponding to the set of pressed mouse buttons. // This includes the button of the given message, even if it is being released. int MouseStateFlagsFromNative(const base::NativeEvent& native_event) { - // TODO(msw): ORing the pressed/released button into the flags is _wrong_. - // It makes it impossible to tell which button was modified when multiple - // buttons are/were held down. Instead, we need to track the modified button - // independently and audit event consumers to do the right thing. int win_flags = GetNativeMouseKey(native_event); // Client mouse messages provide key states in their WPARAMs. @@ -233,7 +229,17 @@ bool IsMouseEvent(const base::NativeEvent& native_event) { int GetChangedMouseButtonFlagsFromNative( const base::NativeEvent& native_event) { - // TODO(sky): implement me. + switch (GetNativeMouseKey(native_event)) { + case MK_LBUTTON: + return EF_LEFT_MOUSE_BUTTON; + case MK_MBUTTON: + return EF_MIDDLE_MOUSE_BUTTON; + case MK_RBUTTON: + return EF_RIGHT_MOUSE_BUTTON; + // TODO: add support for MK_XBUTTON1. + default: + break; + } return 0; } |