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

Side by Side Diff: ash/common/wm/maximize_mode/maximize_mode_window_manager.cc

Issue 2700523004: Remove docked windows entirely in M59. (Closed)
Patch Set: Rebase and fix 1 test Created 3 years, 10 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/maximize_mode/maximize_mode_window_manager.h" 5 #include "ash/common/wm/maximize_mode/maximize_mode_window_manager.h"
6 6
7 #include "ash/common/ash_switches.h" 7 #include "ash/common/ash_switches.h"
8 #include "ash/common/session/session_state_delegate.h" 8 #include "ash/common/session/session_state_delegate.h"
9 #include "ash/common/wm/maximize_mode/maximize_mode_event_handler.h" 9 #include "ash/common/wm/maximize_mode/maximize_mode_event_handler.h"
10 #include "ash/common/wm/maximize_mode/maximize_mode_window_state.h" 10 #include "ash/common/wm/maximize_mode/maximize_mode_window_state.h"
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 } 258 }
259 259
260 bool MaximizeModeWindowManager::ShouldHandleWindow(WmWindow* window) { 260 bool MaximizeModeWindowManager::ShouldHandleWindow(WmWindow* window) {
261 DCHECK(window); 261 DCHECK(window);
262 262
263 // Windows with the always-on-top property should be free-floating and thus 263 // Windows with the always-on-top property should be free-floating and thus
264 // not managed by us. 264 // not managed by us.
265 if (window->IsAlwaysOnTop()) 265 if (window->IsAlwaysOnTop())
266 return false; 266 return false;
267 267
268 // Windows in the dock should not be managed by us.
269 if (window->GetWindowState()->IsDocked())
270 return false;
271
272 // If the changing bounds in the maximized/fullscreen is allowed, then 268 // If the changing bounds in the maximized/fullscreen is allowed, then
273 // let the client manage it even in maximized mode. 269 // let the client manage it even in maximized mode.
274 if (window->GetWindowState()->allow_set_bounds_in_maximized()) 270 if (window->GetWindowState()->allow_set_bounds_in_maximized())
275 return false; 271 return false;
276 272
277 return window->GetType() == ui::wm::WINDOW_TYPE_NORMAL; 273 return window->GetType() == ui::wm::WINDOW_TYPE_NORMAL;
278 } 274 }
279 275
280 void MaximizeModeWindowManager::AddWindowCreationObservers() { 276 void MaximizeModeWindowManager::AddWindowCreationObservers() {
281 DCHECK(observed_container_windows_.empty()); 277 DCHECK(observed_container_windows_.empty());
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
324 RootWindowController* controller = root->GetRootWindowController(); 320 RootWindowController* controller = root->GetRootWindowController();
325 WmWindow* default_container = 321 WmWindow* default_container =
326 root->GetChildByShellWindowId(kShellWindowId_DefaultContainer); 322 root->GetChildByShellWindowId(kShellWindowId_DefaultContainer);
327 controller->workspace_controller()->SetMaximizeBackdropDelegate( 323 controller->workspace_controller()->SetMaximizeBackdropDelegate(
328 enable ? base::MakeUnique<WorkspaceBackdropDelegate>(default_container) 324 enable ? base::MakeUnique<WorkspaceBackdropDelegate>(default_container)
329 : nullptr); 325 : nullptr);
330 } 326 }
331 } 327 }
332 328
333 } // namespace ash 329 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698