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

Side by Side Diff: ash/common/wm_shell.cc

Issue 2372843002: Add ash devtools client (Closed)
Patch Set: sadrul's feedback and renamed to dom_agent Created 4 years, 1 month 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
« ash/BUILD.gn ('K') | « ash/common/wm_shell.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/wm_shell.h" 5 #include "ash/common/wm_shell.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "ash/common/accelerators/accelerator_controller.h" 9 #include "ash/common/accelerators/accelerator_controller.h"
10 #include "ash/common/accelerators/ash_focus_manager_factory.h" 10 #include "ash/common/accelerators/ash_focus_manager_factory.h"
11 #include "ash/common/accessibility_delegate.h" 11 #include "ash/common/accessibility_delegate.h"
12 #include "ash/common/devtools/devtools_dom_agent.h"
12 #include "ash/common/focus_cycler.h" 13 #include "ash/common/focus_cycler.h"
13 #include "ash/common/keyboard/keyboard_ui.h" 14 #include "ash/common/keyboard/keyboard_ui.h"
14 #include "ash/common/new_window_delegate.h" 15 #include "ash/common/new_window_delegate.h"
15 #include "ash/common/palette_delegate.h" 16 #include "ash/common/palette_delegate.h"
16 #include "ash/common/session/session_state_delegate.h" 17 #include "ash/common/session/session_state_delegate.h"
17 #include "ash/common/shelf/app_list_shelf_item_delegate.h" 18 #include "ash/common/shelf/app_list_shelf_item_delegate.h"
18 #include "ash/common/shelf/shelf_controller.h" 19 #include "ash/common/shelf/shelf_controller.h"
19 #include "ash/common/shelf/shelf_delegate.h" 20 #include "ash/common/shelf/shelf_delegate.h"
20 #include "ash/common/shelf/shelf_model.h" 21 #include "ash/common/shelf/shelf_model.h"
21 #include "ash/common/shelf/shelf_window_watcher.h" 22 #include "ash/common/shelf/shelf_window_watcher.h"
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 // Create the app list item in the shelf data model. 81 // Create the app list item in the shelf data model.
81 AppListShelfItemDelegate::CreateAppListItemAndDelegate(shelf_model()); 82 AppListShelfItemDelegate::CreateAppListItemAndDelegate(shelf_model());
82 83
83 // Install the custom factory early on so that views::FocusManagers for Tray, 84 // Install the custom factory early on so that views::FocusManagers for Tray,
84 // Shelf, and WallPaper could be created by the factory. 85 // Shelf, and WallPaper could be created by the factory.
85 views::FocusManagerFactory::Install(new AshFocusManagerFactory); 86 views::FocusManagerFactory::Install(new AshFocusManagerFactory);
86 87
87 new_window_delegate_.reset(delegate_->CreateNewWindowDelegate()); 88 new_window_delegate_.reset(delegate_->CreateNewWindowDelegate());
88 89
89 wallpaper_controller_.reset(new WallpaperController(blocking_pool_)); 90 wallpaper_controller_.reset(new WallpaperController(blocking_pool_));
91
92 // Start devtools server
93 devtools_server_ = ui::devtools::UiDevToolsServer::Create();
94 if (devtools_server_) {
95 std::unique_ptr<ui::devtools::protocol::DOM::Backend> backend(
sky 2016/10/28 21:27:10 MakeUnique where possible.
Sarmad Hashmi 2016/10/28 21:58:19 Done.
96 new devtools::AshDevToolsDOMAgent(this));
97 std::unique_ptr<ui::devtools::UiDevToolsClient> devtools_client(
98 new ui::devtools::UiDevToolsClient("Ash", devtools_server_.get()));
99 devtools_client->AddDOMBackend(std::move(backend));
100 devtools_server_->AttachClient(std::move(devtools_client));
101 }
90 } 102 }
91 103
92 void WmShell::Shutdown() { 104 void WmShell::Shutdown() {
93 // These members access WmShell in their destructors. 105 // These members access WmShell in their destructors.
94 wallpaper_controller_.reset(); 106 wallpaper_controller_.reset();
95 accessibility_delegate_.reset(); 107 accessibility_delegate_.reset();
96 108
97 // ShelfWindowWatcher has window observers and a pointer to the shelf model. 109 // ShelfWindowWatcher has window observers and a pointer to the shelf model.
98 shelf_window_watcher_.reset(); 110 shelf_window_watcher_.reset();
99 // ShelfItemDelegate subclasses it owns have complex cleanup to run (e.g. ARC 111 // ShelfItemDelegate subclasses it owns have complex cleanup to run (e.g. ARC
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
383 void WmShell::DeleteToastManager() { 395 void WmShell::DeleteToastManager() {
384 toast_manager_.reset(); 396 toast_manager_.reset();
385 } 397 }
386 398
387 void WmShell::SetAcceleratorController( 399 void WmShell::SetAcceleratorController(
388 std::unique_ptr<AcceleratorController> accelerator_controller) { 400 std::unique_ptr<AcceleratorController> accelerator_controller) {
389 accelerator_controller_ = std::move(accelerator_controller); 401 accelerator_controller_ = std::move(accelerator_controller);
390 } 402 }
391 403
392 } // namespace ash 404 } // namespace ash
OLDNEW
« ash/BUILD.gn ('K') | « ash/common/wm_shell.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698