Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(219)

Side by Side Diff: ash/common/devtools/ash_devtools_dom_agent.cc

Issue 2738133003: Promotes a handful of members from WmShell to Shell (Closed)
Patch Set: merge Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ash/common/devtools/ash_devtools_dom_agent.h" 5 #include "ash/common/devtools/ash_devtools_dom_agent.h"
6 6
7 #include "ash/common/wm_window.h" 7 #include "ash/common/wm_window.h"
8 #include "ash/public/cpp/shell_window_ids.h" 8 #include "ash/public/cpp/shell_window_ids.h"
9 #include "ash/root_window_controller.h" 9 #include "ash/root_window_controller.h"
10 #include "ash/shell.h"
10 #include "components/ui_devtools/devtools_server.h" 11 #include "components/ui_devtools/devtools_server.h"
11 #include "third_party/skia/include/core/SkColor.h" 12 #include "third_party/skia/include/core/SkColor.h"
12 #include "ui/display/display.h" 13 #include "ui/display/display.h"
13 #include "ui/views/background.h" 14 #include "ui/views/background.h"
14 #include "ui/views/border.h" 15 #include "ui/views/border.h"
15 16
16 namespace ash { 17 namespace ash {
17 namespace devtools { 18 namespace devtools {
18 19
19 namespace { 20 namespace {
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 MaskColor(rgba->getR()), MaskColor(rgba->getG()), 98 MaskColor(rgba->getR()), MaskColor(rgba->getG()),
98 MaskColor(rgba->getB())); 99 MaskColor(rgba->getB()));
99 } 100 }
100 101
101 views::Widget* GetWidgetFromWmWindow(WmWindow* window) { 102 views::Widget* GetWidgetFromWmWindow(WmWindow* window) {
102 return views::Widget::GetWidgetForNativeView(window->aura_window()); 103 return views::Widget::GetWidgetForNativeView(window->aura_window());
103 } 104 }
104 105
105 } // namespace 106 } // namespace
106 107
107 AshDevToolsDOMAgent::AshDevToolsDOMAgent(ash::WmShell* shell) : shell_(shell) { 108 AshDevToolsDOMAgent::AshDevToolsDOMAgent() {}
108 DCHECK(shell_);
109 }
110 109
111 AshDevToolsDOMAgent::~AshDevToolsDOMAgent() { 110 AshDevToolsDOMAgent::~AshDevToolsDOMAgent() {
112 RemoveObservers(); 111 RemoveObservers();
113 } 112 }
114 113
115 ui::devtools::protocol::Response AshDevToolsDOMAgent::disable() { 114 ui::devtools::protocol::Response AshDevToolsDOMAgent::disable() {
116 Reset(); 115 Reset();
117 return ui::devtools::protocol::Response::OK(); 116 return ui::devtools::protocol::Response::OK();
118 } 117 }
119 118
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 } 239 }
241 240
242 void AshDevToolsDOMAgent::RemoveObserver( 241 void AshDevToolsDOMAgent::RemoveObserver(
243 AshDevToolsDOMAgentObserver* observer) { 242 AshDevToolsDOMAgentObserver* observer) {
244 observers_.RemoveObserver(observer); 243 observers_.RemoveObserver(observer);
245 } 244 }
246 245
247 std::unique_ptr<ui::devtools::protocol::DOM::Node> 246 std::unique_ptr<ui::devtools::protocol::DOM::Node>
248 AshDevToolsDOMAgent::BuildInitialTree() { 247 AshDevToolsDOMAgent::BuildInitialTree() {
249 std::unique_ptr<Array<DOM::Node>> children = Array<DOM::Node>::create(); 248 std::unique_ptr<Array<DOM::Node>> children = Array<DOM::Node>::create();
250 for (ash::WmWindow* window : shell_->GetAllRootWindows()) 249 for (aura::Window* window : Shell::GetAllRootWindows())
251 children->addItem(BuildTreeForWindow(window)); 250 children->addItem(BuildTreeForWindow(WmWindow::Get(window)));
252 return BuildNode("root", nullptr, std::move(children)); 251 return BuildNode("root", nullptr, std::move(children));
253 } 252 }
254 253
255 std::unique_ptr<DOM::Node> AshDevToolsDOMAgent::BuildTreeForWindow( 254 std::unique_ptr<DOM::Node> AshDevToolsDOMAgent::BuildTreeForWindow(
256 ash::WmWindow* window) { 255 ash::WmWindow* window) {
257 DCHECK(!window_to_node_id_map_.count(window)); 256 DCHECK(!window_to_node_id_map_.count(window));
258 std::unique_ptr<Array<DOM::Node>> children = Array<DOM::Node>::create(); 257 std::unique_ptr<Array<DOM::Node>> children = Array<DOM::Node>::create();
259 views::Widget* widget = GetWidgetFromWmWindow(window); 258 views::Widget* widget = GetWidgetFromWmWindow(window);
260 if (widget) 259 if (widget)
261 children->addItem(BuildTreeForRootWidget(widget)); 260 children->addItem(BuildTreeForRootWidget(widget));
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
468 467
469 void AshDevToolsDOMAgent::InitializeHighlightingWidget() { 468 void AshDevToolsDOMAgent::InitializeHighlightingWidget() {
470 DCHECK(!widget_for_highlighting_); 469 DCHECK(!widget_for_highlighting_);
471 widget_for_highlighting_.reset(new views::Widget); 470 widget_for_highlighting_.reset(new views::Widget);
472 views::Widget::InitParams params; 471 views::Widget::InitParams params;
473 params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS; 472 params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
474 params.activatable = views::Widget::InitParams::ACTIVATABLE_NO; 473 params.activatable = views::Widget::InitParams::ACTIVATABLE_NO;
475 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; 474 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
476 params.opacity = views::Widget::InitParams::WindowOpacity::TRANSLUCENT_WINDOW; 475 params.opacity = views::Widget::InitParams::WindowOpacity::TRANSLUCENT_WINDOW;
477 params.name = "HighlightingWidget"; 476 params.name = "HighlightingWidget";
478 shell_->GetPrimaryRootWindowController() 477 Shell::GetPrimaryRootWindowController()
479 ->ConfigureWidgetInitParamsForContainer(widget_for_highlighting_.get(), 478 ->ConfigureWidgetInitParamsForContainer(widget_for_highlighting_.get(),
480 kShellWindowId_OverlayContainer, 479 kShellWindowId_OverlayContainer,
481 &params); 480 &params);
482 params.keep_on_top = true; 481 params.keep_on_top = true;
483 params.accept_events = false; 482 params.accept_events = false;
484 widget_for_highlighting_->Init(params); 483 widget_for_highlighting_->Init(params);
485 } 484 }
486 485
487 void AshDevToolsDOMAgent::UpdateHighlight( 486 void AshDevToolsDOMAgent::UpdateHighlight(
488 const WindowAndBoundsPair& window_and_bounds, 487 const WindowAndBoundsPair& window_and_bounds,
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
523 return ui::devtools::protocol::Response::OK(); 522 return ui::devtools::protocol::Response::OK();
524 } 523 }
525 524
526 bool AshDevToolsDOMAgent::IsHighlightingWindow(WmWindow* window) { 525 bool AshDevToolsDOMAgent::IsHighlightingWindow(WmWindow* window) {
527 return widget_for_highlighting_ && 526 return widget_for_highlighting_ &&
528 GetWidgetFromWmWindow(window) == widget_for_highlighting_.get(); 527 GetWidgetFromWmWindow(window) == widget_for_highlighting_.get();
529 } 528 }
530 529
531 } // namespace devtools 530 } // namespace devtools
532 } // namespace ash 531 } // namespace ash
OLDNEW
« no previous file with comments | « ash/common/devtools/ash_devtools_dom_agent.h ('k') | ash/common/devtools/ash_devtools_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698