| Index: ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
| diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
| index acbef2b60820a32f2e22a45f852d0d75eb59f666..879f3eed07415fb4a12d92ee5d4f76c628afa3df 100644
|
| --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
| +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
| @@ -28,6 +28,7 @@
|
| #include "ui/views/ime/input_method_bridge.h"
|
| #include "ui/views/widget/desktop_aura/desktop_cursor_loader_updater.h"
|
| #include "ui/views/widget/desktop_aura/desktop_drag_drop_client_win.h"
|
| +#include "ui/views/widget/desktop_aura/desktop_keyboard_capture_win.h"
|
| #include "ui/views/widget/desktop_aura/desktop_native_cursor_manager.h"
|
| #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
|
| #include "ui/views/widget/root_view.h"
|
| @@ -328,6 +329,17 @@ void DesktopWindowTreeHostWin::SetAlwaysOnTop(bool always_on_top) {
|
| message_handler_->SetAlwaysOnTop(always_on_top);
|
| }
|
|
|
| +void DesktopWindowTreeHostWin::SetInterceptAllKeys(bool want_all_keys) {
|
| + if ((keyboard_capture_.get() == NULL) && want_all_keys) {
|
| + scoped_ptr<DesktopKeyboardCaptureWin> keyboard_capture(
|
| + new DesktopKeyboardCaptureWin(GetHWND()));
|
| + if (keyboard_capture->Capture())
|
| + keyboard_capture_.swap(keyboard_capture);
|
| + } else if (!want_all_keys) {
|
| + keyboard_capture_.reset(NULL);
|
| + }
|
| +}
|
| +
|
| bool DesktopWindowTreeHostWin::IsAlwaysOnTop() const {
|
| return message_handler_->IsAlwaysOnTop();
|
| }
|
|
|