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

Unified Diff: ui/aura_shell/shelf_layout_manager.cc

Issue 8873036: Create a visible shelf and constrain window movement (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Cleanup Created 9 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 side-by-side diff with in-line comments
Download patch
Index: ui/aura_shell/shelf_layout_manager.cc
diff --git a/ui/aura_shell/shelf_layout_manager.cc b/ui/aura_shell/shelf_layout_manager.cc
index cdca6d822d59373aa8cec1452e20a9fa609cbfba..7820d353c56e56c3653ae2c66d88035e383a0e06 100644
--- a/ui/aura_shell/shelf_layout_manager.cc
+++ b/ui/aura_shell/shelf_layout_manager.cc
@@ -75,6 +75,10 @@ void ShelfLayoutManager::SetVisible(bool visible) {
// |visible_| is updated once the animation completes.
}
+gfx::Rect ShelfLayoutManager::GetLauncherBounds() const {
+ return launcher_->GetWindowScreenBounds();
+}
+
////////////////////////////////////////////////////////////////////////////////
// ShelfLayoutManager, aura::LayoutManager implementation:
@@ -115,15 +119,17 @@ void ShelfLayoutManager::CalculateTargetBounds(bool visible,
const gfx::Rect& available_bounds(aura::RootWindow::GetInstance()->bounds());
int y = available_bounds.bottom() - (visible ? max_height_ : 0);
gfx::Rect status_bounds(status_->GetWindowScreenBounds());
+ gfx::Rect launcher_bounds(launcher_->GetWindowScreenBounds());
sky 2011/12/14 06:23:05 What was wrong with the old code here? This change
DaveMoore 2011/12/14 17:03:19 It was left over from when I had a background in t
+ int shelf_h = launcher_bounds.height();
+ int shelf_y = y + (max_height_ - shelf_h) / 2;
target_bounds->status_bounds = gfx::Rect(
available_bounds.right() - status_bounds.width(),
- y + (max_height_ - status_bounds.height()) / 2,
- status_bounds.width(), status_bounds.height());
- gfx::Rect launcher_bounds(launcher_->GetWindowScreenBounds());
+ shelf_y,
+ status_bounds.width(), shelf_h);
target_bounds->launcher_bounds = gfx::Rect(
- available_bounds.x(), y + (max_height_ - launcher_bounds.height()) / 2,
- available_bounds.width() - status_bounds.width(),
- launcher_bounds.height());
+ available_bounds.x(), shelf_y,
+ available_bounds.width(),
+ shelf_h);
if (visible)
target_bounds->work_area_insets = gfx::Insets(0, 0, max_height_, 0);
}

Powered by Google App Engine
This is Rietveld 408576698