Commit 156515dc authored by Shannon Chen's avatar Shannon Chen Committed by Chromium LUCI CQ

Revert "Move focus rings and highlight layers under accessibility bubbles."

This reverts commit cd68a26c.

Reason for revert:
Focus ring disappears in switch access menu
crbug.com/1157261


Original change's description:
> Move focus rings and highlight layers under accessibility bubbles.
>
> Will allow Select-to-speak panel UI to appear above focus ring and highlight layers. This also avoids the need to create more window containers.
>
> Bug: 1143814
> Change-Id: I1c4fce614404c6cabd0336eed2ab6fa7ac1d4c48
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2568547
> Commit-Queue: Joel Riley <joelriley@google.com>
> Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#833155}

TBR=dmazzoni@chromium.org,chromium-scoped@luci-project-accounts.iam.gserviceaccount.com,joelriley@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 1143814
Change-Id: I08c1552e93763dfbf8e09ff75e23e64033456675
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2583106Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#835745}
parent 2222a4c5
......@@ -6,7 +6,6 @@
#include "ash/accessibility/accessibility_cursor_ring_layer.h"
#include "ash/public/cpp/accessibility_focus_ring_info.h"
#include "ash/public/cpp/shell_window_ids.h"
#include "ash/shell.h"
#include "ash/test/ash_test_base.h"
#include "testing/gtest/include/gtest/gtest.h"
......@@ -111,9 +110,7 @@ TEST_F(AccessibilityFocusRingControllerTest, FocusRingWorksOnMultipleDisplays) {
controller->GetFocusRingGroupForTesting("catsRCute")
->focus_layers_for_testing();
EXPECT_EQ(1u, layers.size());
aura::Window* window0_container = Shell::GetContainer(
root_windows[0], kShellWindowId_AccessibilityPanelContainer);
EXPECT_EQ(window0_container, layers[0]->root_window());
EXPECT_EQ(root_windows[0], layers[0]->root_window());
// The focus ring has some padding, so just check the center point is where
// we would expect it.
EXPECT_EQ(layers[0]->layer()->GetTargetBounds().CenterPoint(),
......@@ -130,9 +127,7 @@ TEST_F(AccessibilityFocusRingControllerTest, FocusRingWorksOnMultipleDisplays) {
moved_layers = controller->GetFocusRingGroupForTesting("catsRCute")
->focus_layers_for_testing();
EXPECT_EQ(1u, moved_layers.size());
aura::Window* window1_container = Shell::GetContainer(
root_windows[1], kShellWindowId_AccessibilityPanelContainer);
EXPECT_EQ(window1_container, moved_layers[0]->root_window());
EXPECT_EQ(root_windows[1], moved_layers[0]->root_window());
EXPECT_EQ(moved_layers[0]->layer()->GetTargetBounds().CenterPoint(),
gfx::Rect(100, 50, 10, 10).CenterPoint());
}
......
......@@ -4,7 +4,6 @@
#include "ash/accessibility/accessibility_focus_ring_layer.h"
#include "ash/public/cpp/shell_window_ids.h"
#include "ash/shell.h"
#include "base/bind.h"
#include "third_party/skia/include/core/SkPaint.h"
......@@ -101,8 +100,6 @@ void AccessibilityFocusRingLayer::Set(const AccessibilityFocusRing& ring) {
display::Display display =
display::Screen::GetScreen()->GetDisplayMatching(bounds);
aura::Window* root_window = Shell::GetRootWindowForDisplayId(display.id());
aura::Window* container = Shell::GetContainer(
root_window, kShellWindowId_AccessibilityPanelContainer);
if (SkColorGetA(background_color_) > 0) {
bounds = display.bounds();
......@@ -110,8 +107,8 @@ void AccessibilityFocusRingLayer::Set(const AccessibilityFocusRing& ring) {
int inset = kGradientWidth;
bounds.Inset(-inset, -inset, -inset, -inset);
}
::wm::ConvertRectFromScreen(container, &bounds);
CreateOrUpdateLayer(container, "AccessibilityFocusRing", bounds);
::wm::ConvertRectFromScreen(root_window, &bounds);
CreateOrUpdateLayer(root_window, "AccessibilityFocusRing", bounds);
}
void AccessibilityFocusRingLayer::SetAppearance(FocusRingType type,
......
......@@ -4,7 +4,6 @@
#include "ash/accessibility/accessibility_highlight_layer.h"
#include "ash/public/cpp/shell_window_ids.h"
#include "ash/shell.h"
#include "third_party/skia/include/core/SkPaint.h"
#include "third_party/skia/include/core/SkPath.h"
......@@ -50,10 +49,8 @@ void AccessibilityHighlightLayer::Set(const std::vector<gfx::Rect>& rects,
display::Display display =
display::Screen::GetScreen()->GetDisplayMatching(bounds);
aura::Window* root_window = Shell::GetRootWindowForDisplayId(display.id());
aura::Window* container = Shell::GetContainer(
root_window, kShellWindowId_AccessibilityPanelContainer);
::wm::ConvertRectFromScreen(container, &bounds);
CreateOrUpdateLayer(container, "AccessibilityHighlight", bounds);
::wm::ConvertRectFromScreen(root_window, &bounds);
CreateOrUpdateLayer(root_window, "AccessibilityHighlight", bounds);
}
bool AccessibilityHighlightLayer::CanAnimate() const {
......
......@@ -5,8 +5,6 @@
#include "ash/accessibility/focus_ring_controller.h"
#include "ash/accessibility/focus_ring_layer.h"
#include "ash/public/cpp/shell_window_ids.h"
#include "ash/shell.h"
#include "ash/system/tray/actionable_view.h"
#include "ash/system/tray/tray_background_view.h"
#include "ash/wm/window_util.h"
......@@ -85,9 +83,7 @@ void FocusRingController::UpdateFocusRing() {
// Update the focus ring layer.
if (!focus_ring_layer_)
focus_ring_layer_.reset(new FocusRingLayer(this));
aura::Window* container = Shell::GetContainer(
root_window, kShellWindowId_AccessibilityPanelContainer);
focus_ring_layer_->Set(container, view_bounds);
focus_ring_layer_->Set(root_window, view_bounds);
}
void FocusRingController::OnDeviceScaleFactorChanged() {
......
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