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

Side by Side Diff: ash/wm/panels/panel_layout_manager.cc

Issue 1547223002: Convert Pass()→std::move() in //ash (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
« no previous file with comments | « ash/wm/overview/window_selector_unittest.cc ('k') | ash/wm/window_animations.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/wm/panels/panel_layout_manager.h" 5 #include "ash/wm/panels/panel_layout_manager.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <map> 8 #include <map>
9 #include <utility>
9 10
10 #include "ash/screen_util.h" 11 #include "ash/screen_util.h"
11 #include "ash/shelf/shelf.h" 12 #include "ash/shelf/shelf.h"
12 #include "ash/shelf/shelf_layout_manager.h" 13 #include "ash/shelf/shelf_layout_manager.h"
13 #include "ash/shelf/shelf_types.h" 14 #include "ash/shelf/shelf_types.h"
14 #include "ash/shelf/shelf_util.h" 15 #include "ash/shelf/shelf_util.h"
15 #include "ash/shelf/shelf_widget.h" 16 #include "ash/shelf/shelf_widget.h"
16 #include "ash/shell.h" 17 #include "ash/shell.h"
17 #include "ash/shell_window_ids.h" 18 #include "ash/shell_window_ids.h"
18 #include "ash/wm/overview/window_selector_controller.h" 19 #include "ash/wm/overview/window_selector_controller.h"
(...skipping 518 matching lines...) Expand 10 before | Expand all | Expand 10 after
537 538
538 void PanelLayoutManager::WillChangeVisibilityState( 539 void PanelLayoutManager::WillChangeVisibilityState(
539 ShelfVisibilityState new_state) { 540 ShelfVisibilityState new_state) {
540 // On entering / leaving full screen mode the shelf visibility state is 541 // On entering / leaving full screen mode the shelf visibility state is
541 // changed to / from SHELF_HIDDEN. In this state, panel windows should hide 542 // changed to / from SHELF_HIDDEN. In this state, panel windows should hide
542 // to allow the full-screen application to use the full screen. 543 // to allow the full-screen application to use the full screen.
543 bool shelf_hidden = new_state == ash::SHELF_HIDDEN; 544 bool shelf_hidden = new_state == ash::SHELF_HIDDEN;
544 if (!shelf_hidden) { 545 if (!shelf_hidden) {
545 if (restore_windows_on_shelf_visible_) { 546 if (restore_windows_on_shelf_visible_) {
546 scoped_ptr<aura::WindowTracker> restore_windows( 547 scoped_ptr<aura::WindowTracker> restore_windows(
547 restore_windows_on_shelf_visible_.Pass()); 548 std::move(restore_windows_on_shelf_visible_));
548 for (aura::Window::Windows::const_iterator iter = 549 for (aura::Window::Windows::const_iterator iter =
549 restore_windows->windows().begin(); 550 restore_windows->windows().begin();
550 iter != restore_windows->windows().end(); ++iter) { 551 iter != restore_windows->windows().end(); ++iter) {
551 RestorePanel(*iter); 552 RestorePanel(*iter);
552 } 553 }
553 } 554 }
554 return; 555 return;
555 } 556 }
556 557
557 if (restore_windows_on_shelf_visible_) 558 if (restore_windows_on_shelf_visible_)
558 return; 559 return;
559 scoped_ptr<aura::WindowTracker> minimized_windows(new aura::WindowTracker); 560 scoped_ptr<aura::WindowTracker> minimized_windows(new aura::WindowTracker);
560 for (PanelList::iterator iter = panel_windows_.begin(); 561 for (PanelList::iterator iter = panel_windows_.begin();
561 iter != panel_windows_.end();) { 562 iter != panel_windows_.end();) {
562 aura::Window* window = iter->window; 563 aura::Window* window = iter->window;
563 // Minimizing a panel window may remove it from the panel_windows_ list. 564 // Minimizing a panel window may remove it from the panel_windows_ list.
564 // Advance the iterator before minimizing it: http://crbug.com/393047. 565 // Advance the iterator before minimizing it: http://crbug.com/393047.
565 ++iter; 566 ++iter;
566 if (window != dragged_panel_ && window->IsVisible()) { 567 if (window != dragged_panel_ && window->IsVisible()) {
567 minimized_windows->Add(window); 568 minimized_windows->Add(window);
568 wm::GetWindowState(window)->Minimize(); 569 wm::GetWindowState(window)->Minimize();
569 } 570 }
570 } 571 }
571 restore_windows_on_shelf_visible_ = minimized_windows.Pass(); 572 restore_windows_on_shelf_visible_ = std::move(minimized_windows);
572 } 573 }
573 574
574 //////////////////////////////////////////////////////////////////////////////// 575 ////////////////////////////////////////////////////////////////////////////////
575 // PanelLayoutManager private implementation: 576 // PanelLayoutManager private implementation:
576 577
577 void PanelLayoutManager::MinimizePanel(aura::Window* panel) { 578 void PanelLayoutManager::MinimizePanel(aura::Window* panel) {
578 ::wm::SetWindowVisibilityAnimationType( 579 ::wm::SetWindowVisibilityAnimationType(
579 panel, WINDOW_VISIBILITY_ANIMATION_TYPE_MINIMIZE); 580 panel, WINDOW_VISIBILITY_ANIMATION_TYPE_MINIMIZE);
580 ui::Layer* layer = panel->layer(); 581 ui::Layer* layer = panel->layer();
581 ui::ScopedLayerAnimationSettings panel_slide_settings(layer->GetAnimator()); 582 ui::ScopedLayerAnimationSettings panel_slide_settings(layer->GetAnimator());
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
951 // Keyboard hidden, restore original bounds if they exist. 952 // Keyboard hidden, restore original bounds if they exist.
952 SetChildBounds(panel, panel_state->GetRestoreBoundsInScreen()); 953 SetChildBounds(panel, panel_state->GetRestoreBoundsInScreen());
953 } 954 }
954 } 955 }
955 // This bounds change will have caused a change to the Shelf which does not 956 // This bounds change will have caused a change to the Shelf which does not
956 // propogate automatically to this class, so manually recalculate bounds. 957 // propogate automatically to this class, so manually recalculate bounds.
957 OnWindowResized(); 958 OnWindowResized();
958 } 959 }
959 960
960 } // namespace ash 961 } // namespace ash
OLDNEW
« no previous file with comments | « ash/wm/overview/window_selector_unittest.cc ('k') | ash/wm/window_animations.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698