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

Unified Diff: ash/shelf/shelf_layout_manager.h

Issue 12313118: Refactor: Shelf Widget (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: formatting and moved a couple unit tests Created 7 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 side-by-side diff with in-line comments
Download patch
Index: ash/shelf/shelf_layout_manager.h
diff --git a/ash/wm/shelf_layout_manager.h b/ash/shelf/shelf_layout_manager.h
similarity index 94%
rename from ash/wm/shelf_layout_manager.h
rename to ash/shelf/shelf_layout_manager.h
index 01775bb573cee02467ef25d06313e2d902abd2c5..395f7fb94a45388faadfd3467326390229c50aec 100644
--- a/ash/wm/shelf_layout_manager.h
+++ b/ash/shelf/shelf_layout_manager.h
@@ -7,8 +7,10 @@
#include "ash/ash_export.h"
#include "ash/launcher/launcher.h"
-#include "ash/shelf_types.h"
+#include "ash/shelf/background_animator.h"
+#include "ash/shelf/shelf_types.h"
#include "ash/shell_observer.h"
+#include "ash/system/status_area_widget.h"
#include "base/basictypes.h"
#include "base/compiler_specific.h"
#include "base/logging.h"
@@ -29,6 +31,7 @@ class GestureEvent;
namespace ash {
class ScreenAsh;
+class ShelfWidget;
namespace internal {
class ShelfLayoutManagerTest;
@@ -65,7 +68,7 @@ class ASH_EXPORT ShelfLayoutManager :
// Size of the shelf when auto-hidden.
static const int kAutoHideSize;
- explicit ShelfLayoutManager(StatusAreaWidget* status);
+ explicit ShelfLayoutManager(ShelfWidget* shelf);
virtual ~ShelfLayoutManager();
// Sets the ShelfAutoHideBehavior. See enum description for details.
@@ -83,24 +86,12 @@ class ASH_EXPORT ShelfLayoutManager :
workspace_controller_ = controller;
}
- views::Widget* launcher_widget() {
- return launcher_ ? launcher_->widget() : NULL;
- }
- const views::Widget* launcher_widget() const {
- return launcher_ ? launcher_->widget() : NULL;
- }
- StatusAreaWidget* status_area_widget() { return status_area_widget_; }
-
bool in_layout() const { return in_layout_; }
// Returns whether the shelf and its contents (launcher, status) are visible
// on the screen.
bool IsVisible() const;
- // The launcher is typically created after the layout manager.
- void SetLauncher(Launcher* launcher);
- Launcher* launcher() { return launcher_; }
-
// Returns the ideal bounds of the shelf assuming it is visible.
gfx::Rect GetIdealBounds();
@@ -197,6 +188,7 @@ class ASH_EXPORT ShelfLayoutManager :
// given |window|. See RootWindowController::ForLauncher for more info.
static ShelfLayoutManager* ForLauncher(aura::Window* window);
+ ShelfWidget* shelf_widget() const { return shelf_; }
private:
class AutoHideEventFilter;
class UpdateShelfObserver;
@@ -207,8 +199,9 @@ class ASH_EXPORT ShelfLayoutManager :
TargetBounds();
float opacity;
- gfx::Rect launcher_bounds_in_root;
- gfx::Rect status_bounds_in_root;
+ gfx::Rect shelf_bounds_in_root;
+ gfx::Rect launcher_bounds_in_shelf;
+ gfx::Rect status_bounds_in_shelf;
gfx::Insets work_area_insets;
};
@@ -292,8 +285,7 @@ class ASH_EXPORT ShelfLayoutManager :
// Current state.
State state_;
- Launcher* launcher_;
- StatusAreaWidget* status_area_widget_;
+ ShelfWidget* shelf_;
WorkspaceController* workspace_controller_;

Powered by Google App Engine
This is Rietveld 408576698