From 13f3ffed950ad1cf1956968fd9901ae4edb51297 Mon Sep 17 00:00:00 2001 From: Andy Wickham Date: Fri, 30 Jul 2021 16:00:20 -1000 Subject: [PATCH] Adds initial Taskbar Edu implementation. Currently it just pops up with one placeholder image for splitscreen. The Next button doesn't do anything. Screenshots: Light: https://screenshot.googleplex.com/B27CwBcwobHTghN.png Dark: https://screenshot.googleplex.com/48EuJZv8evd5RGW.png Known issues: - Back gesture is picked up behind by the app behind the taskbar. - When the flag is enabled, the Edu shows up each time you open an app, rather than only the first time. Bug: 180605356 Test: Manual Change-Id: Ifba9aa59abf1501b5f8ddebb3fcc13df85f6efaa --- .../drawable/button_taskbar_edu_bordered.xml | 32 +++++ .../drawable/button_taskbar_edu_colored.xml | 29 +++++ .../res/drawable/taskbar_edu_splitscreen.webp | Bin 0 -> 25136 bytes quickstep/res/layout/taskbar_edu.xml | 82 +++++++++++++ quickstep/res/values/dimens.xml | 1 + quickstep/res/values/strings.xml | 9 ++ quickstep/res/values/styles.xml | 12 ++ .../launcher3/QuickstepTransitionManager.java | 4 + .../taskbar/LauncherTaskbarUIController.java | 23 ++++ .../taskbar/TaskbarActivityContext.java | 3 +- .../launcher3/taskbar/TaskbarControllers.java | 5 +- .../taskbar/TaskbarEduController.java | 47 ++++++++ .../launcher3/taskbar/TaskbarEduView.java | 113 ++++++++++++++++++ .../quickstep/LauncherActivityInterface.java | 4 + .../launcher3/AbstractFloatingView.java | 9 +- .../launcher3/config/FeatureFlags.java | 3 + 16 files changed, 371 insertions(+), 5 deletions(-) create mode 100644 quickstep/res/drawable/button_taskbar_edu_bordered.xml create mode 100644 quickstep/res/drawable/button_taskbar_edu_colored.xml create mode 100644 quickstep/res/drawable/taskbar_edu_splitscreen.webp create mode 100644 quickstep/res/layout/taskbar_edu.xml create mode 100644 quickstep/src/com/android/launcher3/taskbar/TaskbarEduController.java create mode 100644 quickstep/src/com/android/launcher3/taskbar/TaskbarEduView.java diff --git a/quickstep/res/drawable/button_taskbar_edu_bordered.xml b/quickstep/res/drawable/button_taskbar_edu_bordered.xml new file mode 100644 index 0000000000..47f8e8f8cd --- /dev/null +++ b/quickstep/res/drawable/button_taskbar_edu_bordered.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/quickstep/res/drawable/button_taskbar_edu_colored.xml b/quickstep/res/drawable/button_taskbar_edu_colored.xml new file mode 100644 index 0000000000..70bfc9f255 --- /dev/null +++ b/quickstep/res/drawable/button_taskbar_edu_colored.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/quickstep/res/drawable/taskbar_edu_splitscreen.webp b/quickstep/res/drawable/taskbar_edu_splitscreen.webp new file mode 100644 index 0000000000000000000000000000000000000000..2f4402f69e63c3bdedffa90a09d0ad246c4a24c1 GIT binary patch literal 25136 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

^J?HM+jg`uR%f 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 jUkgdn(!T&nT1P}{$9=& + + + + + + + + + + +