summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--base/win/win_util.cc17
-rw-r--r--base/win/win_util.h14
-rw-r--r--content/browser/renderer_host/input/web_input_event_builders_win.cc40
-rw-r--r--content/browser/renderer_host/input/web_input_event_util.cc4
-rw-r--r--ui/events/BUILD.gn2
-rw-r--r--ui/events/blink/blink_event_util.cc15
-rw-r--r--ui/events/event.cc3
-rw-r--r--ui/events/event_constants.h2
-rw-r--r--ui/events/events.gyp2
-rw-r--r--ui/events/test/events_test_utils_x11.cc1
-rw-r--r--ui/events/win/events_win.cc23
-rw-r--r--ui/events/win/system_event_state_lookup.cc47
-rw-r--r--ui/events/win/system_event_state_lookup.h42
-rw-r--r--ui/events/x/events_x.cc2
-rw-r--r--ui/views/controls/menu/menu_runner_impl.cc4
-rw-r--r--ui/views/win/hwnd_message_handler.cc10
-rw-r--r--win8/metro_driver/chrome_app_view_ash.cc8
-rw-r--r--win8/metro_driver/metro_driver.gyp1
18 files changed, 153 insertions, 84 deletions
diff --git a/base/win/win_util.cc b/base/win/win_util.cc
index 98d451f..93ec543 100644
--- a/base/win/win_util.cc
+++ b/base/win/win_util.cc
@@ -290,23 +290,6 @@ bool GetUserSidString(std::wstring* user_sid) {
return true;
}
-bool IsShiftPressed() {
- return (::GetKeyState(VK_SHIFT) & 0x8000) == 0x8000;
-}
-
-bool IsCtrlPressed() {
- return (::GetKeyState(VK_CONTROL) & 0x8000) == 0x8000;
-}
-
-bool IsAltPressed() {
- return (::GetKeyState(VK_MENU) & 0x8000) == 0x8000;
-}
-
-bool IsAltGrPressed() {
- return (::GetKeyState(VK_MENU) & 0x8000) == 0x8000 &&
- (::GetKeyState(VK_CONTROL) & 0x8000) == 0x8000;
-}
-
bool UserAccountControlIsEnabled() {
// This can be slow if Windows ends up going to disk. Should watch this key
// for changes and only read it once, preferably on the file thread.
diff --git a/base/win/win_util.h b/base/win/win_util.h
index 3c900ff..384db80 100644
--- a/base/win/win_util.h
+++ b/base/win/win_util.h
@@ -61,20 +61,6 @@ BASE_EXPORT void GetNonClientMetrics(NONCLIENTMETRICS_XP* metrics);
// Returns the string representing the current user sid.
BASE_EXPORT bool GetUserSidString(std::wstring* user_sid);
-// Returns true if the shift key is currently pressed.
-BASE_EXPORT bool IsShiftPressed();
-
-// Returns true if the ctrl key is currently pressed.
-BASE_EXPORT bool IsCtrlPressed();
-
-// Returns true if the alt key is currently pressed.
-BASE_EXPORT bool IsAltPressed();
-
-// Returns true if the altgr key is currently pressed.
-// Windows does not have specific key code and modifier bit and Alt+Ctrl key is
-// used as AltGr key in Windows.
-BASE_EXPORT bool IsAltGrPressed();
-
// Returns false if user account control (UAC) has been disabled with the
// EnableLUA registry flag. Returns true if user account control is enabled.
// NOTE: The EnableLUA registry flag, which is ignored on Windows XP
diff --git a/content/browser/renderer_host/input/web_input_event_builders_win.cc b/content/browser/renderer_host/input/web_input_event_builders_win.cc
index 88aa3e8..faace7f 100644
--- a/content/browser/renderer_host/input/web_input_event_builders_win.cc
+++ b/content/browser/renderer_host/input/web_input_event_builders_win.cc
@@ -6,6 +6,8 @@
#include "base/logging.h"
#include "content/browser/renderer_host/input/web_input_event_util.h"
+#include "ui/events/blink/blink_event_util.h"
+#include "ui/events/event_utils.h"
#include "ui/gfx/win/dpi.h"
using blink::WebInputEvent;
@@ -18,15 +20,6 @@ namespace content {
static const unsigned long kDefaultScrollLinesPerWheelDelta = 3;
static const unsigned long kDefaultScrollCharsPerWheelDelta = 1;
-// Loads the state for toggle keys into the event.
-static void SetToggleKeyState(WebInputEvent* event) {
- // Low bit set from GetKeyState indicates "toggled".
- if (::GetKeyState(VK_NUMLOCK) & 1)
- event->modifiers |= WebInputEvent::NumLockOn;
- if (::GetKeyState(VK_CAPITAL) & 1)
- event->modifiers |= WebInputEvent::CapsLockOn;
-}
-
WebKeyboardEvent WebKeyboardEventBuilder::Build(HWND hwnd,
UINT message,
WPARAM wparam,
@@ -71,12 +64,8 @@ WebKeyboardEvent WebKeyboardEventBuilder::Build(HWND hwnd,
}
result.setKeyIdentifierFromWindowsKeyCode();
- if (::GetKeyState(VK_SHIFT) & 0x8000)
- result.modifiers |= WebInputEvent::ShiftKey;
- if (::GetKeyState(VK_CONTROL) & 0x8000)
- result.modifiers |= WebInputEvent::ControlKey;
- if (::GetKeyState(VK_MENU) & 0x8000)
- result.modifiers |= WebInputEvent::AltKey;
+ result.modifiers =
+ ui::EventFlagsToWebEventModifiers(ui::GetModifiersFromKeyState());
// NOTE: There doesn't seem to be a way to query the mouse button state in
// this case.
@@ -86,7 +75,6 @@ WebKeyboardEvent WebKeyboardEventBuilder::Build(HWND hwnd,
if ((result.type == WebInputEvent::RawKeyDown) && (lparam & 0x40000000))
result.modifiers |= WebInputEvent::IsAutoRepeat;
- SetToggleKeyState(&result);
return result;
}
@@ -219,13 +207,12 @@ WebMouseEvent WebMouseEventBuilder::Build(HWND hwnd,
result.clickCount = g_last_click_count;
// set modifiers:
-
+ result.modifiers =
+ ui::EventFlagsToWebEventModifiers(ui::GetModifiersFromKeyState());
if (wparam & MK_CONTROL)
result.modifiers |= WebInputEvent::ControlKey;
if (wparam & MK_SHIFT)
result.modifiers |= WebInputEvent::ShiftKey;
- if (::GetKeyState(VK_MENU) & 0x8000)
- result.modifiers |= WebInputEvent::AltKey;
if (wparam & MK_LBUTTON)
result.modifiers |= WebInputEvent::LeftButtonDown;
if (wparam & MK_MBUTTON)
@@ -233,7 +220,6 @@ WebMouseEvent WebMouseEventBuilder::Build(HWND hwnd,
if (wparam & MK_RBUTTON)
result.modifiers |= WebInputEvent::RightButtonDown;
- SetToggleKeyState(&result);
return result;
}
@@ -253,8 +239,6 @@ WebMouseWheelEvent WebMouseWheelEventBuilder::Build(HWND hwnd,
result.button = WebMouseEvent::ButtonNone;
// Get key state, coordinates, and wheel delta from event.
- typedef SHORT (WINAPI *GetKeyStateFunction)(int key);
- GetKeyStateFunction get_key_state_func;
UINT key_state;
float wheel_delta;
bool horizontal_scroll = false;
@@ -262,11 +246,10 @@ WebMouseWheelEvent WebMouseWheelEventBuilder::Build(HWND hwnd,
// Synthesize mousewheel event from a scroll event. This is needed to
// simulate middle mouse scrolling in some laptops. Use GetAsyncKeyState
// for key state since we are synthesizing the input event.
- get_key_state_func = GetAsyncKeyState;
key_state = 0;
- if (get_key_state_func(VK_SHIFT) & 0x8000)
+ if (GetAsyncKeyState(VK_SHIFT) & 0x8000)
key_state |= MK_SHIFT;
- if (get_key_state_func(VK_CONTROL) & 0x8000)
+ if (GetAsyncKeyState(VK_CONTROL) & 0x8000)
key_state |= MK_CONTROL;
// NOTE: There doesn't seem to be a way to query the mouse button state
// in this case.
@@ -300,7 +283,6 @@ WebMouseWheelEvent WebMouseWheelEventBuilder::Build(HWND hwnd,
horizontal_scroll = true;
} else {
// Non-synthesized event; we can just read data off the event.
- get_key_state_func = ::GetKeyState;
key_state = GET_KEYSTATE_WPARAM(wparam);
result.globalX = static_cast<short>(LOWORD(lparam));
@@ -316,12 +298,12 @@ WebMouseWheelEvent WebMouseWheelEventBuilder::Build(HWND hwnd,
horizontal_scroll = true;
// Set modifiers based on key state.
+ result.modifiers =
+ ui::EventFlagsToWebEventModifiers(ui::GetModifiersFromKeyState());
if (key_state & MK_SHIFT)
result.modifiers |= WebInputEvent::ShiftKey;
if (key_state & MK_CONTROL)
result.modifiers |= WebInputEvent::ControlKey;
- if (get_key_state_func(VK_MENU) & 0x8000)
- result.modifiers |= WebInputEvent::AltKey;
if (key_state & MK_LBUTTON)
result.modifiers |= WebInputEvent::LeftButtonDown;
if (key_state & MK_MBUTTON)
@@ -329,8 +311,6 @@ WebMouseWheelEvent WebMouseWheelEventBuilder::Build(HWND hwnd,
if (key_state & MK_RBUTTON)
result.modifiers |= WebInputEvent::RightButtonDown;
- SetToggleKeyState(&result);
-
// Set coordinates by translating event coordinates from screen to client.
POINT client_point = { result.globalX, result.globalY };
MapWindowPoints(0, hwnd, &client_point, 1);
diff --git a/content/browser/renderer_host/input/web_input_event_util.cc b/content/browser/renderer_host/input/web_input_event_util.cc
index 4265577..daf30ff 100644
--- a/content/browser/renderer_host/input/web_input_event_util.cc
+++ b/content/browser/renderer_host/input/web_input_event_util.cc
@@ -46,6 +46,10 @@ int WebEventModifiersToEventFlags(int modifiers) {
flags |= ui::EF_RIGHT_MOUSE_BUTTON;
if (modifiers & blink::WebInputEvent::CapsLockOn)
flags |= ui::EF_CAPS_LOCK_DOWN;
+ if (modifiers & blink::WebInputEvent::NumLockOn)
+ flags |= ui::EF_NUM_LOCK_DOWN;
+ if (modifiers & blink::WebInputEvent::ScrollLockOn)
+ flags |= ui::EF_SCROLL_LOCK_DOWN;
if (modifiers & blink::WebInputEvent::IsAutoRepeat)
flags |= ui::EF_IS_REPEAT;
diff --git a/ui/events/BUILD.gn b/ui/events/BUILD.gn
index ac49329..867a513 100644
--- a/ui/events/BUILD.gn
+++ b/ui/events/BUILD.gn
@@ -115,6 +115,8 @@ component("events") {
"null_event_targeter.cc",
"null_event_targeter.h",
"win/events_win.cc",
+ "win/system_event_state_lookup.cc",
+ "win/system_event_state_lookup.h",
]
defines = [ "EVENTS_IMPLEMENTATION" ]
diff --git a/ui/events/blink/blink_event_util.cc b/ui/events/blink/blink_event_util.cc
index 4dca563..4b19b3e 100644
--- a/ui/events/blink/blink_event_util.cc
+++ b/ui/events/blink/blink_event_util.cc
@@ -201,8 +201,19 @@ int EventFlagsToWebEventModifiers(int flags) {
if (flags & EF_ALT_DOWN)
modifiers |= blink::WebInputEvent::AltKey;
if (flags & EF_COMMAND_DOWN)
+#if defined(OS_WIN)
+ // Evaluate whether OSKey should be set for other platforms.
+ // Since this value was never set on Windows before as the meta
+ // key; we don't break backwards compatiblity exposing it as the
+ // true OS key. However this is not the case for Linux; see
+ // http://crbug.com/539979
+ modifiers |= blink::WebInputEvent::OSKey;
+#else
modifiers |= blink::WebInputEvent::MetaKey;
+#endif
+ if (flags & EF_ALTGR_DOWN)
+ modifiers |= blink::WebInputEvent::AltGrKey;
if (flags & EF_LEFT_MOUSE_BUTTON)
modifiers |= blink::WebInputEvent::LeftButtonDown;
if (flags & EF_MIDDLE_MOUSE_BUTTON)
@@ -215,6 +226,10 @@ int EventFlagsToWebEventModifiers(int flags) {
modifiers |= blink::WebInputEvent::IsAutoRepeat;
if (flags & ui::EF_TOUCH_ACCESSIBILITY)
modifiers |= blink::WebInputEvent::IsTouchAccessibility;
+ if (flags & ui::EF_NUM_LOCK_DOWN)
+ modifiers |= blink::WebInputEvent::NumLockOn;
+ if (flags & ui::EF_SCROLL_LOCK_DOWN)
+ modifiers |= blink::WebInputEvent::ScrollLockOn;
return modifiers;
}
diff --git a/ui/events/event.cc b/ui/events/event.cc
index 5907c27..ff725aa 100644
--- a/ui/events/event.cc
+++ b/ui/events/event.cc
@@ -878,9 +878,6 @@ void KeyEvent::NormalizeFlags() {
case VKEY_MENU:
mask = EF_ALT_DOWN;
break;
- case VKEY_CAPITAL:
- mask = EF_CAPS_LOCK_DOWN;
- break;
default:
return;
}
diff --git a/ui/events/event_constants.h b/ui/events/event_constants.h
index 5aab3ff..70fdb72 100644
--- a/ui/events/event_constants.h
+++ b/ui/events/event_constants.h
@@ -94,6 +94,8 @@ enum EventFlags {
EF_MOD3_DOWN = 1 << 11,
EF_BACK_MOUSE_BUTTON = 1 << 12,
EF_FORWARD_MOUSE_BUTTON = 1 << 13,
+ EF_NUM_LOCK_DOWN = 1 << 14,
+ EF_SCROLL_LOCK_DOWN = 1 << 15,
};
// Flags specific to key events
diff --git a/ui/events/events.gyp b/ui/events/events.gyp
index 00ea04d..30cdaec 100644
--- a/ui/events/events.gyp
+++ b/ui/events/events.gyp
@@ -148,6 +148,8 @@
'null_event_targeter.h',
'ozone/events_ozone.cc',
'win/events_win.cc',
+ 'win/system_event_state_lookup.cc',
+ 'win/system_event_state_lookup.h',
'x/events_x.cc',
],
'conditions': [
diff --git a/ui/events/test/events_test_utils_x11.cc b/ui/events/test/events_test_utils_x11.cc
index cfb28b1..e16e7fa 100644
--- a/ui/events/test/events_test_utils_x11.cc
+++ b/ui/events/test/events_test_utils_x11.cc
@@ -23,6 +23,7 @@ unsigned int XEventState(int flags) {
((flags & ui::EF_SHIFT_DOWN) ? ShiftMask : 0) |
((flags & ui::EF_CONTROL_DOWN) ? ControlMask : 0) |
((flags & ui::EF_ALT_DOWN) ? Mod1Mask : 0) |
+ ((flags & ui::EF_NUM_LOCK_DOWN) ? Mod2Mask : 0) |
((flags & ui::EF_CAPS_LOCK_DOWN) ? LockMask : 0) |
((flags & ui::EF_ALTGR_DOWN) ? Mod5Mask : 0) |
((flags & ui::EF_COMMAND_DOWN) ? Mod4Mask : 0) |
diff --git a/ui/events/win/events_win.cc b/ui/events/win/events_win.cc
index 1f50e5d..c2f35f4 100644
--- a/ui/events/win/events_win.cc
+++ b/ui/events/win/events_win.cc
@@ -8,9 +8,9 @@
#include "base/logging.h"
#include "base/time/time.h"
-#include "base/win/win_util.h"
#include "ui/events/event_utils.h"
#include "ui/events/keycodes/keyboard_code_conversion_win.h"
+#include "ui/events/win/system_event_state_lookup.h"
#include "ui/gfx/geometry/point.h"
#include "ui/gfx/win/dpi.h"
@@ -104,10 +104,7 @@ bool IsScrollEvent(const base::NativeEvent& native_event) {
// Returns a mask corresponding to the set of pressed modifier keys.
// Checks the current global state and the state sent by client mouse messages.
int KeyStateFlagsFromNative(const base::NativeEvent& native_event) {
- int flags = 0;
- flags |= base::win::IsAltPressed() ? EF_ALT_DOWN : EF_NONE;
- flags |= base::win::IsShiftPressed() ? EF_SHIFT_DOWN : EF_NONE;
- flags |= base::win::IsCtrlPressed() ? EF_CONTROL_DOWN : EF_NONE;
+ int flags = GetModifiersFromKeyState();
// Check key messages for the extended key flag.
if (IsKeyEvent(native_event))
@@ -367,14 +364,22 @@ int GetModifiersFromACCEL(const ACCEL& accel) {
int GetModifiersFromKeyState() {
int modifiers = EF_NONE;
- if (base::win::IsShiftPressed())
+ if (ui::win::IsShiftPressed())
modifiers |= EF_SHIFT_DOWN;
- if (base::win::IsCtrlPressed())
+ if (ui::win::IsCtrlPressed())
modifiers |= EF_CONTROL_DOWN;
- if (base::win::IsAltPressed())
+ if (ui::win::IsAltPressed())
modifiers |= EF_ALT_DOWN;
- if (base::win::IsAltGrPressed())
+ if (ui::win::IsAltGrPressed())
modifiers |= EF_ALTGR_DOWN;
+ if (ui::win::IsWindowsKeyPressed())
+ modifiers |= EF_COMMAND_DOWN;
+ if (ui::win::IsCapsLockOn())
+ modifiers |= EF_CAPS_LOCK_DOWN;
+ if (ui::win::IsNumLockOn())
+ modifiers |= EF_NUM_LOCK_DOWN;
+ if (ui::win::IsScrollLockOn())
+ modifiers |= EF_SCROLL_LOCK_DOWN;
return modifiers;
}
diff --git a/ui/events/win/system_event_state_lookup.cc b/ui/events/win/system_event_state_lookup.cc
new file mode 100644
index 0000000..b9833f2
--- /dev/null
+++ b/ui/events/win/system_event_state_lookup.cc
@@ -0,0 +1,47 @@
+// Copyright (c) 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "ui/events/win/system_event_state_lookup.h"
+
+#include <windows.h>
+
+namespace ui {
+namespace win {
+
+bool IsShiftPressed() {
+ return (::GetKeyState(VK_SHIFT) & 0x8000) == 0x8000;
+}
+
+bool IsCtrlPressed() {
+ return (::GetKeyState(VK_CONTROL) & 0x8000) == 0x8000;
+}
+
+bool IsAltPressed() {
+ return (::GetKeyState(VK_MENU) & 0x8000) == 0x8000;
+}
+
+bool IsAltGrPressed() {
+ return (::GetKeyState(VK_MENU) & 0x8000) == 0x8000 &&
+ (::GetKeyState(VK_CONTROL) & 0x8000) == 0x8000;
+}
+
+bool IsWindowsKeyPressed() {
+ return (::GetKeyState(VK_LWIN) & 0x8000) == 0x8000 ||
+ (::GetKeyState(VK_RWIN) & 0x8000) == 0x8000;
+}
+
+bool IsCapsLockOn() {
+ return (::GetKeyState(VK_CAPITAL) & 0x0001) == 0x0001;
+}
+
+bool IsNumLockOn() {
+ return (::GetKeyState(VK_NUMLOCK) & 0x0001) == 0x0001;
+}
+
+bool IsScrollLockOn() {
+ return (::GetKeyState(VK_SCROLL) & 0x0001) == 0x0001;
+}
+
+} // namespace win
+} // namespace ui
diff --git a/ui/events/win/system_event_state_lookup.h b/ui/events/win/system_event_state_lookup.h
new file mode 100644
index 0000000..e7ca6ba
--- /dev/null
+++ b/ui/events/win/system_event_state_lookup.h
@@ -0,0 +1,42 @@
+// Copyright (c) 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef UI_EVENTS_WIN_SYSTEM_EVENT_STATE_LOOKUP_H_
+#define UI_EVENTS_WIN_SYSTEM_EVENT_STATE_LOOKUP_H_
+
+#include "ui/events/events_export.h"
+
+namespace ui {
+namespace win {
+
+// Returns true if the shift key is currently pressed.
+EVENTS_EXPORT bool IsShiftPressed();
+
+// Returns true if the ctrl key is currently pressed.
+EVENTS_EXPORT bool IsCtrlPressed();
+
+// Returns true if the alt key is currently pressed.
+EVENTS_EXPORT bool IsAltPressed();
+
+// Returns true if the altgr key is currently pressed.
+// Windows does not have specific key code and modifier bit and Alt+Ctrl key is
+// used as AltGr key in Windows.
+EVENTS_EXPORT bool IsAltGrPressed();
+
+// Returns true if the Windows key is currently pressed.
+EVENTS_EXPORT bool IsWindowsKeyPressed();
+
+// Returns true if the caps lock state is on.
+EVENTS_EXPORT bool IsCapsLockOn();
+
+// Returns true if the num lock state is on.
+EVENTS_EXPORT bool IsNumLockOn();
+
+// Returns true if the scroll lock state is on.
+EVENTS_EXPORT bool IsScrollLockOn();
+
+} // namespace win
+} // namespace ui
+
+#endif // UI_EVENTS_WIN_SYSTEM_EVENT_STATE_LOOKUP_H_
diff --git a/ui/events/x/events_x.cc b/ui/events/x/events_x.cc
index f71fbcb..6afb53c 100644
--- a/ui/events/x/events_x.cc
+++ b/ui/events/x/events_x.cc
@@ -149,6 +149,8 @@ int GetEventFlagsFromXState(unsigned int state) {
flags |= ui::EF_ALT_DOWN;
if (state & LockMask)
flags |= ui::EF_CAPS_LOCK_DOWN;
+ if (state & Mod2Mask)
+ flags |= ui::EF_NUM_LOCK_DOWN;
if (state & Mod3Mask)
flags |= ui::EF_MOD3_DOWN;
if (state & Mod4Mask)
diff --git a/ui/views/controls/menu/menu_runner_impl.cc b/ui/views/controls/menu/menu_runner_impl.cc
index 4167be997..8ce4f3f 100644
--- a/ui/views/controls/menu/menu_runner_impl.cc
+++ b/ui/views/controls/menu/menu_runner_impl.cc
@@ -13,7 +13,7 @@
#include "ui/views/widget/widget.h"
#if defined(OS_WIN)
-#include "base/win/win_util.h"
+#include "ui/events/win/system_event_state_lookup.h"
#endif
namespace views {
@@ -208,7 +208,7 @@ bool MenuRunnerImpl::ShouldShowMnemonics(MenuButton* button) {
#if defined(OS_WIN)
// This is only needed on Windows.
if (!show_mnemonics)
- show_mnemonics = base::win::IsAltPressed();
+ show_mnemonics = ui::win::IsAltPressed();
#endif
return show_mnemonics;
}
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 5348080..7d4857d 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -13,7 +13,6 @@
#include "base/debug/alias.h"
#include "base/trace_event/trace_event.h"
#include "base/win/scoped_gdi_object.h"
-#include "base/win/win_util.h"
#include "base/win/windows_version.h"
#include "ui/base/touch/touch_enabled.h"
#include "ui/base/view_prop.h"
@@ -25,6 +24,7 @@
#include "ui/events/event.h"
#include "ui/events/event_utils.h"
#include "ui/events/keycodes/keyboard_code_conversion_win.h"
+#include "ui/events/win/system_event_state_lookup.h"
#include "ui/gfx/canvas.h"
#include "ui/gfx/geometry/insets.h"
#include "ui/gfx/icon_util.h"
@@ -2021,9 +2021,9 @@ void HWNDMessageHandler::OnSysCommand(UINT notification_code,
// key and released it, so we should focus the menu bar.
if ((notification_code & sc_mask) == SC_KEYMENU && point.x() == 0) {
int modifiers = ui::EF_NONE;
- if (base::win::IsShiftPressed())
+ if (ui::win::IsShiftPressed())
modifiers |= ui::EF_SHIFT_DOWN;
- if (base::win::IsCtrlPressed())
+ if (ui::win::IsCtrlPressed())
modifiers |= ui::EF_CONTROL_DOWN;
// Retrieve the status of shift and control keys to prevent consuming
// shift+alt keys, which are used by Windows to change input languages.
@@ -2330,8 +2330,8 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
// doing this undesirable thing, but that means we need to roll the
// sys-command handling ourselves.
// Combine |w_param| with common key state message flags.
- w_param |= base::win::IsCtrlPressed() ? MK_CONTROL : 0;
- w_param |= base::win::IsShiftPressed() ? MK_SHIFT : 0;
+ w_param |= ui::win::IsCtrlPressed() ? MK_CONTROL : 0;
+ w_param |= ui::win::IsShiftPressed() ? MK_SHIFT : 0;
}
}
} else if (message == WM_NCRBUTTONDOWN &&
diff --git a/win8/metro_driver/chrome_app_view_ash.cc b/win8/metro_driver/chrome_app_view_ash.cc
index 776f23e..0660120 100644
--- a/win8/metro_driver/chrome_app_view_ash.cc
+++ b/win8/metro_driver/chrome_app_view_ash.cc
@@ -16,13 +16,13 @@
#include "base/path_service.h"
#include "base/single_thread_task_runner.h"
#include "base/win/metro.h"
-#include "base/win/win_util.h"
#include "base/win/windows_version.h"
#include "chrome/common/chrome_switches.h"
#include "ipc/ipc_channel.h"
#include "ipc/ipc_channel_proxy.h"
#include "ipc/ipc_sender.h"
#include "ui/events/gesture_detection/motion_event.h"
+#include "ui/events/win/system_event_state_lookup.h"
#include "ui/gfx/geometry/point_conversions.h"
#include "ui/gfx/win/dpi.h"
#include "ui/metro_viewer/metro_viewer_messages.h"
@@ -284,11 +284,11 @@ void RunMessageLoop(winui::Core::ICoreDispatcher* dispatcher) {
// Helper to return the state of the shift/control/alt keys.
uint32 GetKeyboardEventFlags() {
uint32 flags = 0;
- if (base::win::IsShiftPressed())
+ if (ui::win::IsShiftPressed())
flags |= ui::EF_SHIFT_DOWN;
- if (base::win::IsCtrlPressed())
+ if (ui::win::IsCtrlPressed())
flags |= ui::EF_CONTROL_DOWN;
- if (base::win::IsAltPressed())
+ if (ui::win::IsAltPressed())
flags |= ui::EF_ALT_DOWN;
return flags;
}
diff --git a/win8/metro_driver/metro_driver.gyp b/win8/metro_driver/metro_driver.gyp
index 2720bb5..b1c17fd 100644
--- a/win8/metro_driver/metro_driver.gyp
+++ b/win8/metro_driver/metro_driver.gyp
@@ -53,6 +53,7 @@
'../../crypto/crypto.gyp:crypto',
'../../ipc/ipc.gyp:ipc',
'../../sandbox/sandbox.gyp:sandbox',
+ '../../ui/events/events.gyp:events',
'../../ui/metro_viewer/metro_viewer.gyp:metro_viewer_messages',
'../../ui/gfx/gfx.gyp:gfx',
'../../ui/gfx/gfx.gyp:gfx_geometry',