OLD | NEW |
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 "chrome/browser/ui/ash/launcher/extension_app_window_launcher_controlle
r.h" | 5 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_controlle
r.h" |
6 | 6 |
7 #include "ash/common/shelf/shelf_delegate.h" | 7 #include "ash/common/shelf/shelf_delegate.h" |
8 #include "ash/common/wm_shell.h" | |
9 #include "ash/common/wm_window.h" | 8 #include "ash/common/wm_window.h" |
| 9 #include "ash/shell.h" |
10 #include "ash/wm/window_properties.h" | 10 #include "ash/wm/window_properties.h" |
11 #include "ash/wm/window_util.h" | 11 #include "ash/wm/window_util.h" |
12 #include "base/stl_util.h" | 12 #include "base/stl_util.h" |
13 #include "base/strings/stringprintf.h" | 13 #include "base/strings/stringprintf.h" |
14 #include "chrome/browser/profiles/profile.h" | 14 #include "chrome/browser/profiles/profile.h" |
15 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h" | 15 #include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h" |
16 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_cont
roller.h" | 16 #include "chrome/browser/ui/ash/launcher/extension_app_window_launcher_item_cont
roller.h" |
17 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" | 17 #include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h" |
18 #include "extensions/browser/app_window/app_window.h" | 18 #include "extensions/browser/app_window/app_window.h" |
19 #include "extensions/browser/app_window/native_app_window.h" | 19 #include "extensions/browser/app_window/native_app_window.h" |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 controller->AddAppWindow(app_window); | 166 controller->AddAppWindow(app_window); |
167 } else { | 167 } else { |
168 std::string launch_id = GetLaunchId(app_window); | 168 std::string launch_id = GetLaunchId(app_window); |
169 ExtensionAppWindowLauncherItemController* controller = | 169 ExtensionAppWindowLauncherItemController* controller = |
170 new ExtensionAppWindowLauncherItemController( | 170 new ExtensionAppWindowLauncherItemController( |
171 ash::AppLaunchId(app_id, launch_id), owner()); | 171 ash::AppLaunchId(app_id, launch_id), owner()); |
172 controller->AddAppWindow(app_window); | 172 controller->AddAppWindow(app_window); |
173 // If there is already a shelf id mapped to this AppLaunchId (e.g. pinned), | 173 // If there is already a shelf id mapped to this AppLaunchId (e.g. pinned), |
174 // use that shelf item. | 174 // use that shelf item. |
175 shelf_id = | 175 shelf_id = |
176 ash::WmShell::Get()->shelf_delegate()->GetShelfIDForAppIDAndLaunchID( | 176 ash::Shell::Get()->shelf_delegate()->GetShelfIDForAppIDAndLaunchID( |
177 app_id, launch_id); | 177 app_id, launch_id); |
178 | 178 |
179 if (shelf_id == 0) { | 179 if (shelf_id == 0) { |
180 shelf_id = owner()->CreateAppLauncherItem(controller, status); | 180 shelf_id = owner()->CreateAppLauncherItem(controller, status); |
181 // Restore any existing app icon and flag as set. | 181 // Restore any existing app icon and flag as set. |
182 const gfx::Image& app_icon = app_window->app_icon(); | 182 const gfx::Image& app_icon = app_window->app_icon(); |
183 if (!app_icon.IsEmpty()) { | 183 if (!app_icon.IsEmpty()) { |
184 owner()->SetLauncherItemImage(shelf_id, app_icon.AsImageSkia()); | 184 owner()->SetLauncherItemImage(shelf_id, app_icon.AsImageSkia()); |
185 controller->set_image_set_by_controller(true); | 185 controller->set_image_set_by_controller(true); |
186 } | 186 } |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
234 WindowToAppShelfIdMap::iterator window_iter = | 234 WindowToAppShelfIdMap::iterator window_iter = |
235 window_to_app_shelf_id_map_.find(window); | 235 window_to_app_shelf_id_map_.find(window); |
236 if (window_iter == window_to_app_shelf_id_map_.end()) | 236 if (window_iter == window_to_app_shelf_id_map_.end()) |
237 return nullptr; | 237 return nullptr; |
238 AppControllerMap::iterator app_controller_iter = | 238 AppControllerMap::iterator app_controller_iter = |
239 app_controller_map_.find(window_iter->second); | 239 app_controller_map_.find(window_iter->second); |
240 if (app_controller_iter == app_controller_map_.end()) | 240 if (app_controller_iter == app_controller_map_.end()) |
241 return nullptr; | 241 return nullptr; |
242 return app_controller_iter->second; | 242 return app_controller_iter->second; |
243 } | 243 } |
OLD | NEW |