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

Side by Side Diff: ash/wm/overview/window_selector.cc

Issue 115153002: wm: public window_types. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ozone deps Created 7 years 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 | Annotate | Revision Log
« no previous file with comments | « ash/wm/gestures/two_finger_drag_handler.cc ('k') | ash/wm/overview/window_selector_unittest.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/overview/window_selector.h" 5 #include "ash/wm/overview/window_selector.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "ash/ash_switches.h" 9 #include "ash/ash_switches.h"
10 #include "ash/root_window_controller.h" 10 #include "ash/root_window_controller.h"
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 if (restore_focus_window_) 268 if (restore_focus_window_)
269 restore_focus_window_->AddObserver(this); 269 restore_focus_window_->AddObserver(this);
270 270
271 std::vector<WindowSelectorPanels*> panels_items; 271 std::vector<WindowSelectorPanels*> panels_items;
272 for (size_t i = 0; i < windows.size(); ++i) { 272 for (size_t i = 0; i < windows.size(); ++i) {
273 WindowSelectorItem* item = NULL; 273 WindowSelectorItem* item = NULL;
274 if (windows[i] != restore_focus_window_) 274 if (windows[i] != restore_focus_window_)
275 windows[i]->AddObserver(this); 275 windows[i]->AddObserver(this);
276 observed_windows_.insert(windows[i]); 276 observed_windows_.insert(windows[i]);
277 277
278 if (windows[i]->type() == aura::client::WINDOW_TYPE_PANEL && 278 if (windows[i]->type() == ui::wm::WINDOW_TYPE_PANEL &&
279 wm::GetWindowState(windows[i])->panel_attached()) { 279 wm::GetWindowState(windows[i])->panel_attached()) {
280 // Attached panel windows are grouped into a single overview item per 280 // Attached panel windows are grouped into a single overview item per
281 // root window (display). 281 // root window (display).
282 std::vector<WindowSelectorPanels*>::iterator iter = 282 std::vector<WindowSelectorPanels*>::iterator iter =
283 std::find_if(panels_items.begin(), panels_items.end(), 283 std::find_if(panels_items.begin(), panels_items.end(),
284 WindowSelectorItemForRoot(windows[i]->GetRootWindow())); 284 WindowSelectorItemForRoot(windows[i]->GetRootWindow()));
285 WindowSelectorPanels* panels_item = NULL; 285 WindowSelectorPanels* panels_item = NULL;
286 if (iter == panels_items.end()) { 286 if (iter == panels_items.end()) {
287 panels_item = new WindowSelectorPanels(); 287 panels_item = new WindowSelectorPanels();
288 panels_items.push_back(panels_item); 288 panels_items.push_back(panels_item);
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 // ended. 386 // ended.
387 (*iter)->RestoreWindowOnExit(window); 387 (*iter)->RestoreWindowOnExit(window);
388 delegate_->OnWindowSelected(window); 388 delegate_->OnWindowSelected(window);
389 } 389 }
390 390
391 void WindowSelector::CancelSelection() { 391 void WindowSelector::CancelSelection() {
392 delegate_->OnSelectionCanceled(); 392 delegate_->OnSelectionCanceled();
393 } 393 }
394 394
395 void WindowSelector::OnWindowAdded(aura::Window* new_window) { 395 void WindowSelector::OnWindowAdded(aura::Window* new_window) {
396 if (new_window->type() != aura::client::WINDOW_TYPE_NORMAL && 396 if (new_window->type() != ui::wm::WINDOW_TYPE_NORMAL &&
397 new_window->type() != aura::client::WINDOW_TYPE_PANEL) { 397 new_window->type() != ui::wm::WINDOW_TYPE_PANEL) {
398 return; 398 return;
399 } 399 }
400 400
401 for (size_t i = 0; i < kSwitchableWindowContainerIdsLength; ++i) { 401 for (size_t i = 0; i < kSwitchableWindowContainerIdsLength; ++i) {
402 if (new_window->parent()->id() == kSwitchableWindowContainerIds[i] && 402 if (new_window->parent()->id() == kSwitchableWindowContainerIds[i] &&
403 !new_window->transient_parent()) { 403 !new_window->transient_parent()) {
404 // The new window is in one of the switchable containers, abort overview. 404 // The new window is in one of the switchable containers, abort overview.
405 CancelSelection(); 405 CancelSelection();
406 return; 406 return;
407 } 407 }
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
512 // If the window is in the observed_windows_ list it needs to continue to be 512 // If the window is in the observed_windows_ list it needs to continue to be
513 // observed. 513 // observed.
514 if (observed_windows_.find(restore_focus_window_) == 514 if (observed_windows_.find(restore_focus_window_) ==
515 observed_windows_.end()) { 515 observed_windows_.end()) {
516 restore_focus_window_->RemoveObserver(this); 516 restore_focus_window_->RemoveObserver(this);
517 } 517 }
518 restore_focus_window_ = NULL; 518 restore_focus_window_ = NULL;
519 } 519 }
520 520
521 } // namespace ash 521 } // namespace ash
OLDNEW
« no previous file with comments | « ash/wm/gestures/two_finger_drag_handler.cc ('k') | ash/wm/overview/window_selector_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698