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

Unified Diff: ash/wm/overview/window_grid.cc

Issue 363133002: Defer preparing for overview until all overview items are initialized. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/wm/overview/window_grid.h ('k') | ash/wm/overview/window_selector.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/wm/overview/window_grid.cc
diff --git a/ash/wm/overview/window_grid.cc b/ash/wm/overview/window_grid.cc
index 99ea37c2d1e54056e20674b2f1366eb468a595f8..8275c97e295422ded9cef1a175f0935dbf4a4148 100644
--- a/ash/wm/overview/window_grid.cc
+++ b/ash/wm/overview/window_grid.cc
@@ -136,7 +136,6 @@ WindowGrid::WindowGrid(aura::Window* root_window,
continue;
(*iter)->AddObserver(this);
observed_windows_.insert(*iter);
- WindowSelectorItem* item = NULL;
if ((*iter)->type() == ui::wm::WINDOW_TYPE_PANEL &&
wm::GetWindowState(*iter)->panel_attached()) {
@@ -147,20 +146,12 @@ WindowGrid::WindowGrid(aura::Window* root_window,
window_list_.push_back(panels_item);
}
panels_item->AddWindow(*iter);
- item = panels_item;
} else {
- item = new WindowSelectorWindow(*iter);
- item->PrepareForOverview();
- window_list_.push_back(item);
+ window_list_.push_back(new WindowSelectorWindow(*iter));
}
}
if (window_list_.empty())
return;
-
- if (panels_item)
- panels_item->PrepareForOverview();
-
- PositionWindows(true);
}
WindowGrid::~WindowGrid() {
@@ -170,6 +161,13 @@ WindowGrid::~WindowGrid() {
}
}
+void WindowGrid::PrepareForOverview() {
+ for (ScopedVector<WindowSelectorItem>::iterator iter = window_list_.begin();
+ iter != window_list_.end(); ++iter) {
+ (*iter)->PrepareForOverview();
+ }
+}
+
void WindowGrid::PositionWindows(bool animate) {
CHECK(!window_list_.empty());
« no previous file with comments | « ash/wm/overview/window_grid.h ('k') | ash/wm/overview/window_selector.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698