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

Unified Diff: ash/shelf/shelf.h

Issue 2898743002: Draggable peeking/fullscreen launcher with transparent background. (Closed)
Patch Set: Rebased to resolve merge conflicts, Refactored to use observers, addressed comments, and disabled a… Created 3 years, 7 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.h
diff --git a/ash/shelf/shelf.h b/ash/shelf/shelf.h
index e9bfc15e76902c4f8e68f24e81e76fcdedda7c6d..5c4a61e6330e4a573a10ef301a166b77ba1e057e 100644
--- a/ash/shelf/shelf.h
+++ b/ash/shelf/shelf.h
@@ -11,6 +11,7 @@
#include "ash/public/cpp/shelf_types.h"
#include "ash/shelf/shelf_layout_manager_observer.h"
#include "ash/shelf/shelf_locking_manager.h"
+#include "ash/shell_observer.h"
#include "base/observer_list.h"
namespace aura {
@@ -40,7 +41,7 @@ class ShelfObserver;
// Controller for the shelf state. One per display, because each display might
// have different shelf alignment, autohide, etc. Exists for the lifetime of the
// root window controller.
-class ASH_EXPORT Shelf : public ShelfLayoutManagerObserver {
+class ASH_EXPORT Shelf : public ShelfLayoutManagerObserver, ShellObserver {
public:
Shelf();
~Shelf() override;
@@ -138,6 +139,9 @@ class ASH_EXPORT Shelf : public ShelfLayoutManagerObserver {
ShelfLockingManager* GetShelfLockingManagerForTesting();
ShelfView* GetShelfViewForTesting();
+ // Called when the app list status changes.
+ void OnAppListIsActive();
+
protected:
// ShelfLayoutManagerObserver:
void WillDeleteShelfLayoutManager() override;
@@ -150,6 +154,10 @@ class ASH_EXPORT Shelf : public ShelfLayoutManagerObserver {
class AutoHideEventHandler;
friend class ShelfLayoutManagerTest;
+ // ShellObserver overrides:
+ void OnAppListShownOrDismissed(bool shown,
+ aura::Window* root_window) override;
+
// Layout manager for the shelf container window. Instances are constructed by
// ShelfWidget and lifetimes are managed by the container windows themselves.
ShelfLayoutManager* shelf_layout_manager_ = nullptr;

Powered by Google App Engine
This is Rietveld 408576698