Commit 0ecfc82d authored by James Cook's avatar James Cook Committed by Commit Bot

Move Chrome's ash::AccessibilityDelegate to its own file

This makes it easier to find and consistent with ChromeShellDelegate.

Also cleanup unnecessary includes in ChromeShellDelegate.

I'm doing this because I may need to add a method to the delegate.

Bug: none
Test: existing browser_tests, manually test magnifier
Change-Id: Icf0fdda4f6bea0f9fc3c281902e87fc036764950
Reviewed-on: https://chromium-review.googlesource.com/1246661Reviewed-by: default avatarDavid Tseng <dtseng@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594487}
parent 532ec2cc
......@@ -1420,6 +1420,8 @@ jumbo_split_static_library("ui") {
"ash/browser_image_registrar.h",
"ash/cast_config_client_media_router.cc",
"ash/cast_config_client_media_router.h",
"ash/chrome_accessibility_delegate.cc",
"ash/chrome_accessibility_delegate.h",
"ash/chrome_browser_main_extra_parts_ash.cc",
"ash/chrome_browser_main_extra_parts_ash.h",
"ash/chrome_keyboard_controller_observer.cc",
......
......@@ -10,7 +10,7 @@ specific_include_rules = {
"!ash",
"+ash/public",
],
# AshShellInit supports CLASSIC and MUS modes so allow ash/ includes.
# AshShellInit supports classic (non-mash) mode so allow ash/ includes.
"ash_shell_init\.cc": [
"+ash",
],
......@@ -20,6 +20,10 @@ specific_include_rules = {
"+ash/accelerators/accelerator_controller.h",
"+ash/shell.h",
],
# https://crbug.com/756054
"chrome_accessibility_delegate.*": [
"+ash/accessibility/accessibility_delegate.h",
],
# For ash::Shell::SetIsBrowserProcessWithMash()
"chrome_browser_main_extra_parts_ash\.cc": [
"+ash/shell.h",
......@@ -40,8 +44,6 @@ specific_include_rules = {
],
# https://crbug.com/665064
"chrome_shell_delegate.*": [
# https://crbug.com/756054
"+ash/accessibility/accessibility_delegate.h",
# https://crbug.com/557397
"+ash/screenshot_delegate.h",
# https://crbug.com/665064
......
// Copyright 2018 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 "chrome/browser/ui/ash/chrome_accessibility_delegate.h"
#include <limits>
#include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
#include "chrome/browser/chromeos/accessibility/magnification_manager.h"
using chromeos::AccessibilityManager;
using chromeos::MagnificationManager;
ChromeAccessibilityDelegate::ChromeAccessibilityDelegate() = default;
ChromeAccessibilityDelegate::~ChromeAccessibilityDelegate() = default;
void ChromeAccessibilityDelegate::SetMagnifierEnabled(bool enabled) {
DCHECK(MagnificationManager::Get());
return MagnificationManager::Get()->SetMagnifierEnabled(enabled);
}
bool ChromeAccessibilityDelegate::IsMagnifierEnabled() const {
DCHECK(MagnificationManager::Get());
return MagnificationManager::Get()->IsMagnifierEnabled();
}
bool ChromeAccessibilityDelegate::ShouldShowAccessibilityMenu() const {
DCHECK(AccessibilityManager::Get());
return AccessibilityManager::Get()->ShouldShowAccessibilityMenu();
}
void ChromeAccessibilityDelegate::SaveScreenMagnifierScale(double scale) {
if (MagnificationManager::Get())
MagnificationManager::Get()->SaveScreenMagnifierScale(scale);
}
double ChromeAccessibilityDelegate::GetSavedScreenMagnifierScale() {
if (MagnificationManager::Get())
return MagnificationManager::Get()->GetSavedScreenMagnifierScale();
return std::numeric_limits<double>::min();
}
// Copyright 2018 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 CHROME_BROWSER_UI_ASH_CHROME_ACCESSIBILITY_DELEGATE_H_
#define CHROME_BROWSER_UI_ASH_CHROME_ACCESSIBILITY_DELEGATE_H_
#include "ash/accessibility/accessibility_delegate.h"
#include "base/macros.h"
// See ash::AccessibilityDelegate for details.
class ChromeAccessibilityDelegate : public ash::AccessibilityDelegate {
public:
ChromeAccessibilityDelegate();
~ChromeAccessibilityDelegate() override;
// ash::AccessibilityDelegate:
void SetMagnifierEnabled(bool enabled) override;
bool IsMagnifierEnabled() const override;
bool ShouldShowAccessibilityMenu() const override;
void SaveScreenMagnifierScale(double scale) override;
double GetSavedScreenMagnifierScale() override;
private:
DISALLOW_COPY_AND_ASSIGN(ChromeAccessibilityDelegate);
};
#endif // CHROME_BROWSER_UI_ASH_CHROME_ACCESSIBILITY_DELEGATE_H_
......@@ -4,24 +4,16 @@
#include "chrome/browser/ui/ash/chrome_shell_delegate.h"
#include <stddef.h>
#include <memory>
#include <limits>
#include <vector>
#include "ash/accessibility/accessibility_delegate.h"
#include "ash/screenshot_delegate.h"
#include "base/macros.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/browser_process_platform_part_chromeos.h"
#include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
#include "chrome/browser/chromeos/accessibility/magnification_manager.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/ui/ash/chrome_accessibility_delegate.h"
#include "chrome/browser/ui/ash/chrome_keyboard_ui.h"
#include "chrome/browser/ui/ash/chrome_screenshot_grabber.h"
#include "chrome/browser/ui/ash/multi_user/multi_user_util.h"
#include "chrome/browser/ui/ash/session_controller_client.h"
#include "chrome/browser/ui/ash/session_util.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_commands.h"
......@@ -30,57 +22,15 @@
#include "chrome/browser/ui/browser_tabstrip.h"
#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/ui/scoped_tabbed_browser_displayer.h"
#include "content/public/common/service_manager_connection.h"
#include "content/public/common/url_constants.h"
#include "services/ws/public/cpp/input_devices/input_device_controller_client.h"
#include "ui/aura/window.h"
#include "ui/base/ui_base_features.h"
#include "url/url_constants.h"
using chromeos::AccessibilityManager;
#include "url/gurl.h"
namespace {
const char kKeyboardShortcutHelpPageUrl[] =
"https://support.google.com/chromebook/answer/183101";
class AccessibilityDelegateImpl : public ash::AccessibilityDelegate {
public:
AccessibilityDelegateImpl() = default;
~AccessibilityDelegateImpl() override = default;
void SetMagnifierEnabled(bool enabled) override {
DCHECK(chromeos::MagnificationManager::Get());
return chromeos::MagnificationManager::Get()->SetMagnifierEnabled(enabled);
}
bool IsMagnifierEnabled() const override {
DCHECK(chromeos::MagnificationManager::Get());
return chromeos::MagnificationManager::Get()->IsMagnifierEnabled();
}
bool ShouldShowAccessibilityMenu() const override {
DCHECK(AccessibilityManager::Get());
return AccessibilityManager::Get()->ShouldShowAccessibilityMenu();
}
void SaveScreenMagnifierScale(double scale) override {
if (chromeos::MagnificationManager::Get())
chromeos::MagnificationManager::Get()->SaveScreenMagnifierScale(scale);
}
double GetSavedScreenMagnifierScale() override {
if (chromeos::MagnificationManager::Get()) {
return chromeos::MagnificationManager::Get()
->GetSavedScreenMagnifierScale();
}
return std::numeric_limits<double>::min();
}
private:
DISALLOW_COPY_AND_ASSIGN(AccessibilityDelegateImpl);
};
} // namespace
ChromeShellDelegate::ChromeShellDelegate() = default;
......@@ -108,7 +58,7 @@ std::unique_ptr<keyboard::KeyboardUI> ChromeShellDelegate::CreateKeyboardUI() {
}
ash::AccessibilityDelegate* ChromeShellDelegate::CreateAccessibilityDelegate() {
return new AccessibilityDelegateImpl;
return new ChromeAccessibilityDelegate;
}
std::unique_ptr<ash::ScreenshotDelegate>
......
......@@ -5,23 +5,15 @@
#ifndef CHROME_BROWSER_UI_ASH_CHROME_SHELL_DELEGATE_H_
#define CHROME_BROWSER_UI_ASH_CHROME_SHELL_DELEGATE_H_
#include <memory>
#include <string>
#include "ash/shell_delegate.h"
#include "base/macros.h"
#include "build/build_config.h"
namespace keyboard {
class KeyboardUI;
}
class ChromeShellDelegate : public ash::ShellDelegate {
public:
ChromeShellDelegate();
~ChromeShellDelegate() override;
// ash::ShellDelegate overrides;
// ash::ShellDelegate:
bool CanShowWindowForUser(aura::Window* window) const override;
std::unique_ptr<keyboard::KeyboardUI> CreateKeyboardUI() override;
std::unique_ptr<ash::ScreenshotDelegate> CreateScreenshotDelegate() override;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment