| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 module app_list.mojom; | 5 module app_list.mojom; |
| 6 | 6 |
| 7 import "services/ui/public/interfaces/window_manager_constants.mojom"; | 7 import "services/ui/public/interfaces/window_manager_constants.mojom"; |
| 8 | 8 |
| 9 // TODO(msw): Rename this file to app_list.mojom; move to ash? | 9 // TODO(msw): Rename this file to app_list.mojom; move to ash? |
| 10 // TODO(msw): Ash should implement the app list and presenter; chrome should | 10 // TODO(msw): Ash should implement the app list and presenter; chrome should |
| 11 // just push data about its apps into the app list interface. | 11 // just push data about its apps into the app list interface. |
| 12 | 12 |
| 13 // Implemented by ash. Used by chrome to set the presenter interface. | 13 // Implemented by ash. Used by chrome to set the presenter interface. |
| 14 interface AppList { | 14 interface AppList { |
| 15 // Set the app list presenter interface, to let ash trigger Chrome's app list. | 15 // Set the app list presenter interface, to let ash trigger Chrome's app list. |
| 16 SetAppListPresenter(AppListPresenter presenter); | 16 SetAppListPresenter(AppListPresenter presenter); |
| 17 | 17 |
| 18 // Notify the app list that the presenter's [target] visibility changed. | 18 // Notify the app list that the presenter's [target] visibility changed. |
| 19 OnTargetVisibilityChanged(bool visible); | 19 OnTargetVisibilityChanged(bool visible); |
| 20 OnVisibilityChanged(bool visible); | 20 |
| 21 // |display_id| gives the display containing the app list. |
| 22 OnVisibilityChanged(bool visible, int64 display_id); |
| 21 }; | 23 }; |
| 22 | 24 |
| 23 // Implemented by chrome. Used by ash to actually show and dismiss the app list. | 25 // Implemented by chrome. Used by ash to actually show and dismiss the app list. |
| 24 interface AppListPresenter { | 26 interface AppListPresenter { |
| 25 // Show the app list on the specified display. | 27 // Show the app list on the specified display. |
| 26 Show(int64 display_id); | 28 Show(int64 display_id); |
| 27 | 29 |
| 28 // Dismiss the app list. | 30 // Dismiss the app list. |
| 29 Dismiss(); | 31 Dismiss(); |
| 30 | 32 |
| 31 // Show the app list (on the specified display) if it is hidden; hide the | 33 // Show the app list (on the specified display) if it is hidden; hide the |
| 32 // app list if it is shown. | 34 // app list if it is shown. |
| 33 ToggleAppList(int64 display_id); | 35 ToggleAppList(int64 display_id); |
| 34 }; | 36 }; |
| OLD | NEW |