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

Side by Side Diff: chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc

Issue 2721153004: Remove ash_util namespace (Closed)
Patch Set: 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 "chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.h " 5 #include "chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.h "
6 6
7 #include "apps/ui/views/app_window_frame_view.h" 7 #include "apps/ui/views/app_window_frame_view.h"
8 #include "ash/common/ash_constants.h" 8 #include "ash/common/ash_constants.h"
9 #include "ash/common/ash_switches.h" 9 #include "ash/common/ash_switches.h"
10 #include "ash/common/frame/custom_frame_view_ash.h" 10 #include "ash/common/frame/custom_frame_view_ash.h"
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 ash::switches::DockedWindowsEnabled()) { 138 ash::switches::DockedWindowsEnabled()) {
139 window->SetProperty(aura::client::kShowStateKey, create_params.state); 139 window->SetProperty(aura::client::kShowStateKey, create_params.state);
140 } 140 }
141 141
142 window->SetProperty(aura::client::kAppIdKey, 142 window->SetProperty(aura::client::kAppIdKey,
143 new std::string(app_window->extension_id())); 143 new std::string(app_window->extension_id()));
144 144
145 if (app_window->window_type_is_panel()) { 145 if (app_window->window_type_is_panel()) {
146 // Ash's ShelfWindowWatcher handles app panel windows once this type is set. 146 // Ash's ShelfWindowWatcher handles app panel windows once this type is set.
147 // The type should have been initialized for mash below, via mus_properties. 147 // The type should have been initialized for mash below, via mus_properties.
148 if (!ash_util::IsRunningInMash()) 148 if (!IsRunningInMash())
149 window->SetProperty<int>(ash::kShelfItemTypeKey, ash::TYPE_APP_PANEL); 149 window->SetProperty<int>(ash::kShelfItemTypeKey, ash::TYPE_APP_PANEL);
150 } else { 150 } else {
151 window->SetProperty(aura::client::kAppType, 151 window->SetProperty(aura::client::kAppType,
152 static_cast<int>(ash::AppType::CHROME_APP)); 152 static_cast<int>(ash::AppType::CHROME_APP));
153 } 153 }
154 } 154 }
155 155
156 void ChromeNativeAppWindowViewsAuraAsh::OnBeforeWidgetInit( 156 void ChromeNativeAppWindowViewsAuraAsh::OnBeforeWidgetInit(
157 const AppWindow::CreateParams& create_params, 157 const AppWindow::CreateParams& create_params,
158 views::Widget::InitParams* init_params, 158 views::Widget::InitParams* init_params,
159 views::Widget* widget) { 159 views::Widget* widget) {
160 ChromeNativeAppWindowViewsAura::OnBeforeWidgetInit(create_params, init_params, 160 ChromeNativeAppWindowViewsAura::OnBeforeWidgetInit(create_params, init_params,
161 widget); 161 widget);
162 if (create_params.is_ime_window) { 162 if (create_params.is_ime_window) {
163 // Put ime windows into the ime window container on the primary display. 163 // Put ime windows into the ime window container on the primary display.
164 int container_id = ash::kShellWindowId_ImeWindowParentContainer; 164 int container_id = ash::kShellWindowId_ImeWindowParentContainer;
165 if (ash_util::IsRunningInMash()) { 165 if (IsRunningInMash()) {
166 init_params->mus_properties 166 init_params->mus_properties
167 [ui::mojom::WindowManager::kContainerId_InitProperty] = 167 [ui::mojom::WindowManager::kContainerId_InitProperty] =
168 mojo::ConvertTo<std::vector<uint8_t>>(container_id); 168 mojo::ConvertTo<std::vector<uint8_t>>(container_id);
169 int display_id = display::Screen::GetScreen()->GetPrimaryDisplay().id(); 169 int display_id = display::Screen::GetScreen()->GetPrimaryDisplay().id();
170 init_params 170 init_params
171 ->mus_properties[ui::mojom::WindowManager::kDisplayId_InitProperty] = 171 ->mus_properties[ui::mojom::WindowManager::kDisplayId_InitProperty] =
172 mojo::ConvertTo<std::vector<uint8_t>>(display_id); 172 mojo::ConvertTo<std::vector<uint8_t>>(display_id);
173 } else { 173 } else {
174 init_params->parent = ash::Shell::GetContainer( 174 init_params->parent = ash::Shell::GetContainer(
175 ash::Shell::GetPrimaryRootWindow(), container_id); 175 ash::Shell::GetPrimaryRootWindow(), container_id);
176 } 176 }
177 } 177 }
178 DCHECK_NE(AppWindow::WINDOW_TYPE_PANEL, create_params.window_type); 178 DCHECK_NE(AppWindow::WINDOW_TYPE_PANEL, create_params.window_type);
179 DCHECK_NE(AppWindow::WINDOW_TYPE_V1_PANEL, create_params.window_type); 179 DCHECK_NE(AppWindow::WINDOW_TYPE_V1_PANEL, create_params.window_type);
180 init_params->mus_properties 180 init_params->mus_properties
181 [ui::mojom::WindowManager::kRemoveStandardFrame_InitProperty] = 181 [ui::mojom::WindowManager::kRemoveStandardFrame_InitProperty] =
182 mojo::ConvertTo<std::vector<uint8_t>>(init_params->remove_standard_frame); 182 mojo::ConvertTo<std::vector<uint8_t>>(init_params->remove_standard_frame);
183 } 183 }
184 184
185 void ChromeNativeAppWindowViewsAuraAsh::OnBeforePanelWidgetInit( 185 void ChromeNativeAppWindowViewsAuraAsh::OnBeforePanelWidgetInit(
186 bool use_default_bounds, 186 bool use_default_bounds,
187 views::Widget::InitParams* init_params, 187 views::Widget::InitParams* init_params,
188 views::Widget* widget) { 188 views::Widget* widget) {
189 ChromeNativeAppWindowViewsAura::OnBeforePanelWidgetInit(use_default_bounds, 189 ChromeNativeAppWindowViewsAura::OnBeforePanelWidgetInit(use_default_bounds,
190 init_params, 190 init_params,
191 widget); 191 widget);
192 192
193 if (ash_util::IsRunningInMash()) { 193 if (IsRunningInMash()) {
194 // Ash's ShelfWindowWatcher handles app panel windows once this type is set. 194 // Ash's ShelfWindowWatcher handles app panel windows once this type is set.
195 init_params 195 init_params
196 ->mus_properties[ui::mojom::WindowManager::kShelfItemType_Property] = 196 ->mus_properties[ui::mojom::WindowManager::kShelfItemType_Property] =
197 mojo::ConvertTo<std::vector<uint8_t>>( 197 mojo::ConvertTo<std::vector<uint8_t>>(
198 static_cast<aura::PropertyConverter::PrimitiveType>( 198 static_cast<aura::PropertyConverter::PrimitiveType>(
199 ash::TYPE_APP_PANEL)); 199 ash::TYPE_APP_PANEL));
200 } else if (ash::Shell::HasInstance() && use_default_bounds) { 200 } else if (ash::Shell::HasInstance() && use_default_bounds) {
201 // Open a new panel on the target root. 201 // Open a new panel on the target root.
202 init_params->context = ash::Shell::GetTargetRootWindow(); 202 init_params->context = ash::Shell::GetTargetRootWindow();
203 init_params->bounds = gfx::Rect(GetPreferredSize()); 203 init_params->bounds = gfx::Rect(GetPreferredSize());
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 views::Widget* widget) { 311 views::Widget* widget) {
312 // Set the delegate now because CustomFrameViewAsh sets the 312 // Set the delegate now because CustomFrameViewAsh sets the
313 // WindowStateDelegate if one is not already set. 313 // WindowStateDelegate if one is not already set.
314 ash::wm::GetWindowState(GetNativeWindow()) 314 ash::wm::GetWindowState(GetNativeWindow())
315 ->SetDelegate(std::unique_ptr<ash::wm::WindowStateDelegate>( 315 ->SetDelegate(std::unique_ptr<ash::wm::WindowStateDelegate>(
316 new NativeAppWindowStateDelegate(app_window(), this))); 316 new NativeAppWindowStateDelegate(app_window(), this)));
317 317
318 if (IsFrameless()) 318 if (IsFrameless())
319 return CreateNonStandardAppFrame(); 319 return CreateNonStandardAppFrame();
320 320
321 if (ash_util::IsRunningInMash()) 321 if (IsRunningInMash())
322 return ChromeNativeAppWindowViews::CreateNonClientFrameView(widget); 322 return ChromeNativeAppWindowViews::CreateNonClientFrameView(widget);
323 323
324 if (app_window()->window_type_is_panel()) { 324 if (app_window()->window_type_is_panel()) {
325 ash::PanelFrameView* frame_view = 325 ash::PanelFrameView* frame_view =
326 new ash::PanelFrameView(widget, ash::PanelFrameView::FRAME_ASH); 326 new ash::PanelFrameView(widget, ash::PanelFrameView::FRAME_ASH);
327 frame_view->set_context_menu_controller(this); 327 frame_view->set_context_menu_controller(this);
328 if (HasFrameColor()) 328 if (HasFrameColor())
329 frame_view->SetFrameColors(ActiveFrameColor(), InactiveFrameColor()); 329 frame_view->SetFrameColors(ActiveFrameColor(), InactiveFrameColor());
330 return frame_view; 330 return frame_view;
331 } 331 }
(...skipping 23 matching lines...) Expand all
355 // fullscreen is the fullscreen type used by the OS. 355 // fullscreen is the fullscreen type used by the OS.
356 immersive_fullscreen_controller_->SetEnabled( 356 immersive_fullscreen_controller_->SetEnabled(
357 ash::ImmersiveFullscreenController::WINDOW_TYPE_PACKAGED_APP, 357 ash::ImmersiveFullscreenController::WINDOW_TYPE_PACKAGED_APP,
358 (fullscreen_types & AppWindow::FULLSCREEN_TYPE_OS) != 0); 358 (fullscreen_types & AppWindow::FULLSCREEN_TYPE_OS) != 0);
359 // Autohide the shelf instead of hiding the shelf completely when only in 359 // Autohide the shelf instead of hiding the shelf completely when only in
360 // OS fullscreen. 360 // OS fullscreen.
361 ash::wm::WindowState* window_state = 361 ash::wm::WindowState* window_state =
362 ash::wm::GetWindowState(widget()->GetNativeWindow()); 362 ash::wm::GetWindowState(widget()->GetNativeWindow());
363 window_state->set_hide_shelf_when_fullscreen(fullscreen_types != 363 window_state->set_hide_shelf_when_fullscreen(fullscreen_types !=
364 AppWindow::FULLSCREEN_TYPE_OS); 364 AppWindow::FULLSCREEN_TYPE_OS);
365 if (!ash_util::IsRunningInMash()) { 365 if (!IsRunningInMash()) {
366 DCHECK(ash::Shell::HasInstance()); 366 DCHECK(ash::Shell::HasInstance());
367 ash::Shell::GetInstance()->UpdateShelfVisibility(); 367 ash::Shell::GetInstance()->UpdateShelfVisibility();
368 } 368 }
369 } 369 }
370 } 370 }
371 371
372 void ChromeNativeAppWindowViewsAuraAsh::UpdateDraggableRegions( 372 void ChromeNativeAppWindowViewsAuraAsh::UpdateDraggableRegions(
373 const std::vector<extensions::DraggableRegion>& regions) { 373 const std::vector<extensions::DraggableRegion>& regions) {
374 ChromeNativeAppWindowViewsAura::UpdateDraggableRegions(regions); 374 ChromeNativeAppWindowViewsAura::UpdateDraggableRegions(regions);
375 375
(...skipping 18 matching lines...) Expand all
394 window_tree_host->SetClientArea(insets, 394 window_tree_host->SetClientArea(insets,
395 std::move(additional_client_regions)); 395 std::move(additional_client_regions));
396 } 396 }
397 } 397 }
398 398
399 void ChromeNativeAppWindowViewsAuraAsh::OnMenuClosed() { 399 void ChromeNativeAppWindowViewsAuraAsh::OnMenuClosed() {
400 menu_runner_.reset(); 400 menu_runner_.reset();
401 menu_model_adapter_.reset(); 401 menu_model_adapter_.reset();
402 menu_model_.reset(); 402 menu_model_.reset();
403 } 403 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698