| Index: ash/common/shelf/shelf_item_delegate.h
|
| diff --git a/ash/common/shelf/shelf_item_delegate.h b/ash/common/shelf/shelf_item_delegate.h
|
| index 43605db24411b7426b6bafa0293ccc6141350283..ce7dd17c3e6549e8a99eef6e98c731ff5d537592 100644
|
| --- a/ash/common/shelf/shelf_item_delegate.h
|
| +++ b/ash/common/shelf/shelf_item_delegate.h
|
| @@ -7,40 +7,29 @@
|
|
|
| #include "ash/ash_export.h"
|
| #include "ash/public/cpp/shelf_application_menu_item.h"
|
| -
|
| -namespace ui {
|
| -class Event;
|
| -}
|
| +#include "ash/public/cpp/shelf_types.h"
|
| +#include "ui/events/event_constants.h"
|
|
|
| namespace ash {
|
|
|
| // Delegate for the ShelfItem.
|
| class ASH_EXPORT ShelfItemDelegate {
|
| public:
|
| - // The return type for the ShelfItemDelegate::ItemSelected method.
|
| - enum PerformedAction {
|
| - // No action was taken.
|
| - kNoAction,
|
| - // A new window was created.
|
| - kNewWindowCreated,
|
| - // An existing window which was not currently active was activated.
|
| - kExistingWindowActivated,
|
| - // The currently active window was minimized.
|
| - kExistingWindowMinimized,
|
| - // The app list launcher menu was shown.
|
| - kAppListMenuShown,
|
| - };
|
| -
|
| - virtual ~ShelfItemDelegate() {}
|
| -
|
| - // Invoked when the user clicks on a window entry in the launcher.
|
| - // |event| is the click event. The |event| is dispatched by a view
|
| - // and has an instance of |views::View| as the event target
|
| - // but not |aura::Window|. If the |event| is of type KeyEvent, it is assumed
|
| - // that this was triggered by keyboard action (Alt+<number>) and special
|
| - // handling might happen.
|
| + ShelfItemDelegate();
|
| + virtual ~ShelfItemDelegate();
|
| +
|
| + // Called when the user selects a shelf item. The event type and flags, the
|
| + // relevant display id, and the source of the selection should be provided if
|
| + // they are known to the caller; as some subclasses use these arguments.
|
| + // Defaults: (ET_UNKNOWN, EF_NONE, kInvalidDisplayId, LAUNCH_FROM_UNKNOWN)
|
| // Returns the action performed by selecting the item.
|
| - virtual PerformedAction ItemSelected(const ui::Event& event) = 0;
|
| + virtual ShelfAction ItemSelected(ui::EventType event_type,
|
| + int event_flags,
|
| + int64_t display_id,
|
| + ShelfLaunchSource source) = 0;
|
| +
|
| + // A helper to call ItemSelected with a source and default arguments.
|
| + ShelfAction ItemSelectedBySource(ShelfLaunchSource source);
|
|
|
| // Returns any application menu items that should appear for this shelf item.
|
| // |event_flags| specifies the flags of the event which triggered this menu.
|
| @@ -48,6 +37,8 @@ class ASH_EXPORT ShelfItemDelegate {
|
|
|
| // Closes all windows associated with this item.
|
| virtual void Close() = 0;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(ShelfItemDelegate);
|
| };
|
|
|
| } // namespace ash
|
|
|