Index: ash/sticky_keys/sticky_keys_controller.cc |
diff --git a/ash/sticky_keys/sticky_keys_controller.cc b/ash/sticky_keys/sticky_keys_controller.cc |
index 812e46eaa233a0607adaebfa7d1596e232bf8fb6..e5bb0afe2483c32c1dbd4a20dfff9f6583cf4c8b 100644 |
--- a/ash/sticky_keys/sticky_keys_controller.cc |
+++ b/ash/sticky_keys/sticky_keys_controller.cc |
@@ -97,7 +97,9 @@ void StickyKeysHandlerDelegateImpl::DispatchEvent(ui::Event* event, |
/////////////////////////////////////////////////////////////////////////////// |
// StickyKeys |
StickyKeysController::StickyKeysController() |
- : enabled_(false) { |
+ : enabled_(false), |
+ mod3_enabled_(false), |
+ altgr_enabled_(false) { |
} |
StickyKeysController::~StickyKeysController() { |
@@ -124,12 +126,21 @@ void StickyKeysController::Enable(bool enabled) { |
new StickyKeysHandlerDelegateImpl())); |
overlay_.reset(new StickyKeysOverlay()); |
- } else if (overlay_.get()) { |
+ overlay_->SetModifierVisible(ui::EF_ALTGR_DOWN, altgr_enabled_); |
+ } else if (overlay_) { |
overlay_->Show(false); |
} |
} |
} |
+void StickyKeysController::SetModifiersEnabled(bool mod3_enabled, |
+ bool altgr_enabled) { |
+ mod3_enabled_ = mod3_enabled; |
+ altgr_enabled_ = altgr_enabled; |
+ if (overlay_) |
+ overlay_->SetModifierVisible(ui::EF_ALTGR_DOWN, altgr_enabled_); |
+} |
+ |
bool StickyKeysController::HandleKeyEvent(ui::KeyEvent* event) { |
return shift_sticky_key_->HandleKeyEvent(event) || |
alt_sticky_key_->HandleKeyEvent(event) || |