Desk Templates: Click grid item to launch template
This CL implements the functionality of being able to launch templates
by clicking on a grid item. It uses the presenter to call the desk
model, but still relies on `DesksClient` for launching all the apps.
Bug: 1257273
Test: manual, added DesksTemplatesTest.LaunchTemplate
Change-Id: Ie5443ca194a65a895a8e95b533aa8bcc45e57fd5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3239371
Reviewed-by: Ahmed Fakhry <[email protected]>
Reviewed-by: Sammie Quon <[email protected]>
Commit-Queue: Richard Chui <[email protected]>
Cr-Commit-Position: refs/heads/main@{#935251}
diff --git a/ash/shell_delegate.h b/ash/shell_delegate.h
index 76eccb8..3528566 100644
--- a/ash/shell_delegate.h
+++ b/ash/shell_delegate.h
@@ -46,9 +46,10 @@
namespace ash {
class AccessibilityDelegate;
-class CaptureModeDelegate;
-class BackGestureContextualNudgeDelegate;
class BackGestureContextualNudgeController;
+class BackGestureContextualNudgeDelegate;
+class CaptureModeDelegate;
+class DeskTemplate;
class NearbyShareController;
class NearbyShareDelegate;
@@ -168,6 +169,11 @@
int desired_icon_size,
base::OnceCallback<void(apps::mojom::IconValuePtr icon_value)> callback)
const = 0;
+
+ // Launches apps into the active desk. Ran immediately after a desk is created
+ // for a template.
+ virtual void LaunchAppsFromTemplate(
+ std::unique_ptr<DeskTemplate> desk_template) = 0;
};
} // namespace ash