Chromium Code Reviews| 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 8ff4aed52bc2d1fac6bf9f76be34cf8c19bf2dc7..804c51f3fe69f65afc7299789edb85503a44c226 100644 |
| --- a/ash/common/shelf/shelf_item_delegate.h |
| +++ b/ash/common/shelf/shelf_item_delegate.h |
| @@ -8,40 +8,22 @@ |
| #include <stdint.h> |
| #include "ash/ash_export.h" |
| -#include "ash/public/cpp/shelf_application_menu_item.h" |
| #include "ash/public/cpp/shelf_types.h" |
| +#include "ash/public/interfaces/shelf.mojom.h" |
| #include "ui/events/event_constants.h" |
| namespace ash { |
| -// Delegate for the ShelfItem. |
| -class ASH_EXPORT ShelfItemDelegate { |
| +// An abstract delegate for shelf items; see the mojo interface definition. |
| +class ASH_EXPORT ShelfItemDelegate : public mojom::ShelfItemDelegate { |
| public: |
| + using MenuItemList = std::vector<mojom::MenuItemPtr>; |
| + |
| 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 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. |
| - virtual ShelfAppMenuItemList GetAppMenuItems(int event_flags) = 0; |
| - |
| - // Called on invocation of a shelf item's application menu command. |
| - virtual void ExecuteCommand(uint32_t command_id, int event_flags) = 0; |
| - |
| - // Closes all windows associated with this item. |
| - virtual void Close() = 0; |
| + ~ShelfItemDelegate() override; |
| + |
| + // Calls ItemSelected with |source|, default arguments, and no callback. |
| + void ItemSelectedBySource(ShelfLaunchSource source); |
|
James Cook
2017/03/09 01:09:46
Does this class exist just to provide this method?
msw
2017/03/10 06:17:56
Done.
|
| DISALLOW_COPY_AND_ASSIGN(ShelfItemDelegate); |
| }; |