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

Unified Diff: ash/shelf/shelf.h

Issue 2268823002: mash: Move more shelf files to ash/common/shelf. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix rebase. Created 4 years, 4 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/screen_util.cc ('k') | ash/shelf/shelf.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/shelf/shelf.h
diff --git a/ash/shelf/shelf.h b/ash/shelf/shelf.h
deleted file mode 100644
index 3975d8eca2817d86b7388a7b118ee012408f5d55..0000000000000000000000000000000000000000
--- a/ash/shelf/shelf.h
+++ /dev/null
@@ -1,138 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef ASH_SHELF_SHELF_H_
-#define ASH_SHELF_SHELF_H_
-
-#include <stdint.h>
-
-#include <memory>
-
-#include "ash/ash_export.h"
-#include "ash/common/shelf/shelf_constants.h"
-#include "ash/common/shelf/shelf_locking_manager.h"
-#include "ash/common/shelf/shelf_types.h"
-#include "ash/shelf/shelf_widget.h"
-#include "base/macros.h"
-#include "ui/gfx/geometry/size.h"
-#include "ui/views/widget/widget_observer.h"
-
-namespace app_list {
-class ApplicationDragAndDropHost;
-}
-
-namespace gfx {
-class Rect;
-}
-
-namespace views {
-class View;
-}
-
-namespace ash {
-class AppListButton;
-class FocusCycler;
-class ShelfDelegate;
-class ShelfView;
-class WmShelf;
-
-namespace test {
-class ShelfTestAPI;
-}
-
-// Controller for shelf state.
-// DEPRECATED: WmShelf is replacing this class as part of the mus/mash refactor.
-// Use WmShelf for access to state (visibility, auto-hide, etc.).
-class ASH_EXPORT Shelf {
- public:
- Shelf(WmShelf* wm_shelf, ShelfView* shelf_view, ShelfWidget* widget);
- ~Shelf();
-
- // Return the shelf for the primary display. NULL if no user is logged in yet.
- // Useful for tests. For production code use ForWindow() because the user may
- // have multiple displays.
- static Shelf* ForPrimaryDisplay();
-
- // Return the shelf for the display that |window| is currently on, or a shelf
- // on primary display if the shelf per display feature is disabled. NULL if no
- // user is logged in yet.
- static Shelf* ForWindow(const WmWindow* window);
-
- // DEPRECATED. Use WmShelf::GetAlignment() and SetAlignment().
- void SetAlignment(ShelfAlignment alignment);
- ShelfAlignment alignment() const { return alignment_; }
-
- // Sets the ShelfAutoHideBehavior. See enum description for details.
- // DEPRECATED. Use WmShelf::GetAutoHideBehavior() and SetAutoHideBehavior().
- void SetAutoHideBehavior(ShelfAutoHideBehavior auto_hide_behavior);
- ShelfAutoHideBehavior auto_hide_behavior() const {
- return auto_hide_behavior_;
- }
-
- ShelfAutoHideState GetAutoHideState() const;
-
- ShelfVisibilityState GetVisibilityState() const;
-
- // Returns the screen bounds of the item for the specified window. If there is
- // no item for the specified window an empty rect is returned.
- gfx::Rect GetScreenBoundsOfItemIconForWindow(WmWindow* window);
-
- // Updates the icon position given the current window bounds. This is used
- // when dragging panels to reposition them with respect to the other panels.
- void UpdateIconPositionForWindow(WmWindow* window);
-
- // Activates the the shelf item specified by the index in the list of shelf
- // items.
- void ActivateShelfItem(int index);
-
- // Cycles the window focus linearly over the current shelf items.
- void CycleWindowLinear(CycleDirection direction);
-
- AppListButton* GetAppListButton() const;
-
- // Launch a 0-indexed shelf item in the shelf.
- // A negative index launches the last shelf item in the shelf.
- void LaunchAppIndexAt(int item_index);
-
- ShelfWidget* shelf_widget() { return shelf_widget_; }
-
- // TODO(msw): ShelfLayoutManager should not be accessed externally.
- ShelfLayoutManager* shelf_layout_manager() {
- return shelf_widget_->shelf_layout_manager();
- }
-
- // Returns rectangle bounding all visible shelf items. Used screen coordinate
- // system.
- gfx::Rect GetVisibleItemsBoundsInScreen() const;
-
- // Returns ApplicationDragAndDropHost for this shelf.
- app_list::ApplicationDragAndDropHost* GetDragAndDropHostForAppList();
-
- // Updates the background for the shelf items.
- void UpdateShelfItemBackground(int alpha);
-
- ShelfLockingManager* shelf_locking_manager_for_testing() {
- return &shelf_locking_manager_;
- }
-
- ShelfView* shelf_view_for_testing() { return shelf_view_; }
-
- private:
- friend class test::ShelfTestAPI;
-
- // The shelf controller. Owned by the root window controller.
- WmShelf* wm_shelf_;
- ShelfWidget* shelf_widget_;
- ShelfView* shelf_view_;
- ShelfLockingManager shelf_locking_manager_;
-
- ShelfAlignment alignment_ = SHELF_ALIGNMENT_BOTTOM;
- ShelfAutoHideBehavior auto_hide_behavior_ = SHELF_AUTO_HIDE_BEHAVIOR_NEVER;
-
- DISALLOW_COPY_AND_ASSIGN(Shelf);
-};
-
-} // namespace ash
-
-#endif // ASH_SHELF_SHELF_H_
« no previous file with comments | « ash/screen_util.cc ('k') | ash/shelf/shelf.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698