Index: ash/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc |
diff --git a/ash/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc b/ash/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc |
index a6d0b64d196bb75d36d121ca319e83cfbbcd8581..ebd2bb6e7368c3e5cd6e85f50460948772c12749 100644 |
--- a/ash/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc |
+++ b/ash/wm/maximize_mode/scoped_disable_internal_mouse_and_keyboard_ozone.cc |
@@ -15,10 +15,13 @@ |
namespace ash { |
ScopedDisableInternalMouseAndKeyboardOzone:: |
- ScopedDisableInternalMouseAndKeyboardOzone() { |
+ ScopedDisableInternalMouseAndKeyboardOzone() |
+ : should_ignore_touch_pad_(true) { |
ui::InputController* input_controller = |
ui::OzonePlatform::GetInstance()->GetInputController(); |
- if (input_controller->HasTouchpad()) { |
+ if (input_controller->HasTouchpad() && |
+ input_controller->IsInternalTouchpadEnabled()) { |
+ should_ignore_touch_pad_ = false; |
input_controller->SetInternalTouchpadEnabled(false); |
aura::client::GetCursorClient(Shell::GetInstance()->GetPrimaryRootWindow()) |
oshima
2015/10/29 23:38:43
Shell::GetInstnace()->cursor_manager()->HideCursor
afakhry
2015/10/30 05:18:03
Done.
|
->HideCursor(); |
@@ -38,7 +41,10 @@ ScopedDisableInternalMouseAndKeyboardOzone:: |
~ScopedDisableInternalMouseAndKeyboardOzone() { |
ui::InputController* input_controller = |
ui::OzonePlatform::GetInstance()->GetInputController(); |
- input_controller->SetInternalTouchpadEnabled(true); |
+ |
+ if (!should_ignore_touch_pad_) |
+ input_controller->SetInternalTouchpadEnabled(true); |
+ |
input_controller->SetInternalKeyboardFilter(false /* enable_filter */, |
std::vector<ui::DomCode>()); |
} |