Chromium Code Reviews| Index: ash/sysui/shell_delegate_mus.cc |
| diff --git a/ash/sysui/shell_delegate_mus.cc b/ash/sysui/shell_delegate_mus.cc |
| index 8cf896b36b88cd181c747df799be8de66cf0b238..e552096718ab48281c68a506fbebceb3f807139b 100644 |
| --- a/ash/sysui/shell_delegate_mus.cc |
| +++ b/ash/sysui/shell_delegate_mus.cc |
| @@ -17,14 +17,42 @@ |
| #include "base/memory/ptr_util.h" |
| #include "base/strings/string16.h" |
| #include "components/user_manager/user_info_impl.h" |
| +#include "services/shell/public/cpp/connector.h" |
| +#include "services/ui/public/interfaces/accessibility_manager.mojom.h" |
| #include "ui/app_list/presenter/app_list_presenter.h" |
| #include "ui/gfx/image/image.h" |
| +#include "ui/views/mus/window_manager_connection.h" |
| namespace ash { |
| namespace sysui { |
| namespace { |
| +class AccessibilityDelegateMus : public DefaultAccessibilityDelegate { |
|
sky
2016/07/08 16:45:00
To further my previous nit see how accessibility i
|
| + public: |
| + AccessibilityDelegateMus() {} |
| + ~AccessibilityDelegateMus() override {} |
| + |
| + private: |
| + ui::mojom::AccessibilityManager* a11y_manager() { |
| + if (!a11y_manager_ptr_.is_bound()) { |
| + views::WindowManagerConnection::Get()->connector()->ConnectToInterface( |
| + "mojo:ui", &a11y_manager_ptr_); |
| + } |
| + return a11y_manager_ptr_.get(); |
| + } |
| + |
| + // DefaultAccessibilityDelegate: |
| + void ToggleHighContrast() override { |
| + DefaultAccessibilityDelegate::ToggleHighContrast(); |
| + a11y_manager()->SetHighContrastMode(IsHighContrastEnabled()); |
| + } |
| + |
| + ui::mojom::AccessibilityManagerPtr a11y_manager_ptr_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(AccessibilityDelegateMus); |
| +}; |
| + |
| class SessionStateDelegateStub : public SessionStateDelegate { |
| public: |
| SessionStateDelegateStub() |
| @@ -195,8 +223,7 @@ SessionStateDelegate* ShellDelegateMus::CreateSessionStateDelegate() { |
| } |
| AccessibilityDelegate* ShellDelegateMus::CreateAccessibilityDelegate() { |
| - NOTIMPLEMENTED() << " Using the default AccessibilityDelegate implementation"; |
| - return new DefaultAccessibilityDelegate; |
| + return new AccessibilityDelegateMus; |
| } |
| NewWindowDelegate* ShellDelegateMus::CreateNewWindowDelegate() { |